oficina / docs Public

Send sign-in mail after the response, so its timing says nothing

Docs already chose the ceremony by domain and dropped mail to refused
addresses (admissionMailer), but it did that inside the request: a
permitted address waited for SMTP before its ?sent=1 and a refused one
did not. Astra measured the same shape on Slides at 252 ms against
0.35 ms (oficina/slides #20), forced posts included.

rauth's Mailer is now mailQueue (the queue Slides, Sheets, Calendar and
Calls carry): Send queues and returns at once without I/O, one worker
asks the allowlist (listAdmits: a failed grant lookup refuses, as
before) and only then sends, failures are logged and never answered,
drops are counted and logged by the worker, a panicking mailer is
recovered per message, and Close drains within a deadline, cancelling
what is left, before it closes the database the allowlist reads.

Tests: TestSigninNeverWaitsForTheMailer fails on origin/main; the queue
tests fail with each defect put back; TestAppCloseStopsTheMailWorker;
TestAdmissionMailerFailsClosed now drives the queue. Tests that read the
recorder wait for the queue first.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Paul Campbell pushed by paul@keymail.dev ec851203b9e702fa1abe7453df650281cae9c9f0 parent d72b1d0
10 files changed, +524 −23
  • internal/docs/admission_test.go +4 −1
  • internal/docs/app.go +20 −3
  • internal/docs/auth.go +15 −18
  • internal/docs/auth_allowlist_test.go +2 −1
  • internal/docs/auth_keymail_test.go +2 −0
  • internal/docs/home_router_integration_test.go +4 −0
  • internal/docs/mailqueue.go +191 −0
  • internal/docs/mailqueue_test.go +180 −0
  • internal/docs/signin_timing_test.go +105 −0
  • internal/docs/testing.go +1 −0

CI passed — run details

CI log
=== gate ===
=== fixtures: node dependencies

added 20 packages, and audited 21 packages in 554ms

5 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm warn allow-scripts 1 package has install scripts not yet covered by allowScripts:
npm warn allow-scripts   esbuild@0.28.2 (postinstall: node install.js)
npm warn allow-scripts
npm warn allow-scripts Run `npm approve-scripts --allow-scripts-pending` to review, or `npm approve-scripts <pkg>` to allow.
=== fixtures: the save queue's retry/drop logic (F1 regression)
✔ a permanent 4xx drops its batch instead of retrying it, and does not poison the next edit (81.916614ms)
✔ a network failure or a 5xx is retried, not dropped (60.311751ms)
✔ a 500 is retried the same way a network failure is, never dropped (60.57499ms)
ℹ tests 3
ℹ suites 0
ℹ pass 3
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 245.283189
=== fixtures: the resync retry/backoff state machine (fix round 2 regression)
✔ a resync that fails is retried with backoff until it succeeds, without ever running twice at once (1.272614ms)
✔ the browser's online event retries immediately, not just on the next backoff tick (0.213156ms)
✔ reportDivergence before any failure runs the first attempt without a caller ever calling online (0.612798ms)
ℹ tests 3
ℹ suites 0
ℹ pass 3
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 47.489146
=== fixtures: the live-update cursor and connection policy
✔ a tab advances its own cursor only when its POST is the very next row (1.4966ms)
✔ the cursor never moves backwards when a response is overtaken by this tab's own write (0.330444ms)
✔ a later response still carries the cursor forward (0.186757ms)
✔ a burst of notifications collapses into one fetch at a time (0.167581ms)
✔ an event naming a seq the tab already has fetches nothing (0.1726ms)
✔ a stopped subscriber drops a response that arrives late (0.191556ms)
✔ stop closes the stream, and start opens exactly one (0.149007ms)
✔ a hidden tab closes its stream on a shortened deadline, and activity reopens it (0.623468ms)
✔ switching away and back inside the grace never drops the stream, so nothing has to be caught up (0.235247ms)
✔ a visible tab that is only being READ closes when idle and comes back on any activity (0.279339ms)
✔ activity while streaming defers the idle close rather than reopening anything (0.139479ms)
✔ a stream failure is never reported as a save failure, and heals on activity (0.190363ms)
✔ an empty response advances the cursor without applying anything (0.144579ms)
✔ a failed fetch leaves the cursor alone so the next notification retries it (0.172721ms)
✔ a decode failure retries once through the raw log, then gives up (0.7538ms)
✔ updatesURL spells the query string exactly, in particular raw as the literal raw=1 (0.100036ms)
ℹ tests 16
ℹ suites 0
ℹ pass 16
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 51.348135
=== fixtures: paragraph alignment in the editor
✔ the class names are the ones the server renders (1.171545ms)
✔ left, absent and unknown alignments all render as no class (0.148156ms)
✔ toDOM emits a class only for a known alignment (0.467989ms)
✔ a pasted paragraph round-trips its alignment and nothing else (0.211002ms)
✔ alignFromClasses is the inverse of alignClass for every alignment (0.126756ms)
✔ with no dispatch the command reports and changes nothing (1.591666ms)
✔ every toolbar alignment command sets the value its name promises (0.185714ms)
✔ the command aligns the block the cursor is in, and only that one (0.420421ms)
✔ the command aligns every block a selection spans (0.31806ms)
✔ choosing left clears the attribute rather than storing a value (0.320996ms)
✔ one transaction per click, not one per block (0.347856ms)
✔ the buttons report the alignment of the block the cursor is in (0.233745ms)
✔ a block that has no alignment attribute is left alone (0.317931ms)
ℹ tests 13
ℹ suites 0
ℹ pass 13
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 114.841623
=== fixtures: the font vocabulary and its default
✔ the faces are serif, sans and mono (0.999677ms)
✔ an unmarked run is sans (0.137505ms)
✔ choosing the default clears the mark rather than setting one (0.588263ms)
✔ choosing a non-default face sets that face mark (0.10195ms)
✔ a face this build does not know is not an instruction to clear (0.10791ms)
✔ every font mark reads back as its own face (0.097371ms)
✔ a non-font mark leaves the face at the default (0.100597ms)
✔ a run carrying two font marks reads as the face that is drawn (0.099385ms)
ℹ tests 8
ℹ suites 0
ℹ pass 8
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 44.217882
=== fixtures: what a pasted blank line means
✔ a Google Docs blank line stops being two lines tall (1.089102ms)
✔ two blank lines stay two blank lines (0.19354ms)
✔ a trailing break-only paragraph becomes a trailing blank line (0.158905ms)
✔ a Shift+Enter break inside a line of text is left alone (0.142725ms)
✔ a paragraph ending in a break is left alone (0.117398ms)
✔ an ordinary paste is returned by identity (0.685073ms)
✔ paragraph attributes are carried onto the blank lines (0.135231ms)
✔ a blank line inside a pasted blockquote is fixed too (0.142916ms)
✔ a break-only heading is not a paragraph and is left alone (0.132686ms)
✔ WebKit's copy marker is ignored (0.185484ms)
✔ an ordinary br still parses as a hard_break (0.166088ms)
✔ the slice keeps its open depths (0.095738ms)
ℹ tests 12
ℹ suites 0
ℹ pass 12
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 52.213871
=== fixtures: the indent vocabulary and its clamp
✔ a real level becomes its class (0.68372ms)
✔ zero, null and absent are all the same answer: no indent (0.132727ms)
✔ a run of digits too large for any integer type still clamps (0.631493ms)
✔ a level past the maximum clamps rather than being emitted (0.125543ms)
✔ anything that is not a whole number renders flush left (0.137165ms)
✔ a numeric string is a number, because that is what the wire carries (0.097521ms)
✔ the class round-trips back to its level for a paste (0.124642ms)
✔ the step is the half inch every word processor uses (0.093544ms)
ℹ tests 8
ℹ suites 0
ℹ pass 8
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 46.145282
=== fixtures: the point ladder, and the four-step scale it replaced
✔ the default is offered, is first, and carries no mark (0.736047ms)
✔ every other size maps to its own mark (0.11859ms)
✔ a size string works, because that is what a <select> gives you (0.573976ms)
✔ a size this build does not offer is undefined, never null (0.106037ms)
✔ no marks means the default size (0.143436ms)
✔ a mark reports its own size (0.100968ms)
✔ the four-step scale still reports a size on the ladder (0.116085ms)
✔ the legacy marks are in the group the toolbar clears (0.100637ms)
✔ the ladder wins over a legacy mark on the same run (0.117288ms)
ℹ tests 9
ℹ suites 0
ℹ pass 9
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 49.799897
=== fixtures: the autoformat rules, and the Backspace that undoes one
✔ "- " starts a bulleted list (2.940421ms)
✔ "* " and "+ " start one too (0.440568ms)
✔ "1. " starts a numbered list (0.269511ms)
✔ "> " starts a quote (0.319794ms)
✔ "# " makes a heading, and "### " makes a level-3 one (0.690182ms)
✔ Backspace right after a rule gives back the typed characters (0.561614ms)
✔ Backspace away from a rule declines, leaving Backspace alone (0.176177ms)
✔ the patterns do not fire where they must not (0.099465ms)
✔ a numbered list always starts at 1 while the renderer ignores order (0.274881ms)
ℹ tests 9
ℹ suites 0
ℹ pass 9
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 61.499517
=== fixtures: counting words, including where there are no spaces
✔ nothing is nothing (0.658243ms)
✔ ordinary English (0.111627ms)
✔ punctuation is not a word (0.118249ms)
✔ a language without spaces between words still counts (3.522713ms)
✔ the document count walks every block (0.925129ms)
✔ a paragraph boundary is a word boundary (0.168944ms)
✔ characters are counted with and without spaces (0.148906ms)
✔ no selection means no selection count, not a zero (0.141252ms)
ℹ tests 8
ℹ suites 0
ℹ pass 8
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 65.249321
=== fixtures: which menu items the editor enables
✔ an extraCommands item is enabled by sync (0.854678ms)
✔ print, the module’s own local command, is enabled too (0.138157ms)
✔ an editor command follows what the command reports (0.146422ms)
✔ a checkable item is pressed and enabled while it is the current one (0.193119ms)
✔ the view pair follows the mode after a switch, with no reload (0.198629ms)
✔ an item with no aria-pressed never gains one (0.140491ms)
✔ with no view, editor commands are disabled and local ones are not (0.126064ms)
ℹ tests 7
ℹ suites 0
ℹ pass 7
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 45.889826
=== fixtures: the editor's chrome writes only what changed
✔ a state update that changes nothing writes nothing to the chrome (4.394901ms)
✔ a state update that changes something still writes it (1.321304ms)
✔ no DOM write in either bar bypasses dom-writes.mjs (1.909517ms)
ℹ tests 3
ℹ suites 0
ℹ pass 3
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 109.766408
=== the editor bundle must match a fresh build
wrote internal/docs/static/editor.fedd7579de35d95f.js (336726 bytes)
wrote internal/docs/static/jumpto.58ca95c441b1bd49.js (3234 bytes)
wrote internal/docs/static/share.b7f152cdd9e793ac.js (603 bytes)
=== rust: fmt
=== wasm: clippy, then the artifact the host embeds
   Compiling proc-macro2 v1.0.107
   Compiling unicode-ident v1.0.24
   Compiling quote v1.0.47
   Compiling serde_core v1.0.229
   Compiling version_check v0.9.5
   Compiling zerocopy v0.8.56
    Checking cfg-if v1.0.4
    Checking once_cell v1.21.4
   Compiling serde v1.0.229
   Compiling libc v0.2.189
    Checking smallvec v1.15.2
   Compiling crossbeam-utils v0.8.22
   Compiling parking_lot_core v0.9.12
   Compiling rustversion v1.0.23
    Checking pin-project-lite v0.2.17
   Compiling zmij v1.0.23
    Checking parking v2.2.1
   Compiling autocfg v1.5.1
   Compiling serde_json v1.0.151
    Checking event-listener v5.4.2
    Checking scopeguard v1.2.0
   Compiling thiserror v2.0.20
    Checking lock_api v0.4.14
   Compiling paste v1.0.15
    Checking memchr v2.8.3
   Compiling libm v0.2.16
    Checking itoa v1.0.18
   Compiling ahash v0.8.12
    Checking event-listener-strategy v0.5.4
    Checking smallstr v0.3.1
    Checking foldhash v0.2.0
    Checking async-lock v3.4.2
    Checking fastrand v2.5.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core/vendor/fastrand-2.5.0)
    Checking downcast-rs v1.2.1
   Compiling num-traits v0.2.19
    Checking equivalent v1.0.2
    Checking indexmap-nostd v0.4.0
    Checking bitflags v2.13.1
    Checking multi-stash v0.2.0
    Checking semver v1.0.28
    Checking spin v0.9.9
    Checking arrayvec v0.7.8
    Checking wasmparser-nostd v0.100.2
    Checking arc-swap v1.9.2
   Compiling syn v3.0.4
   Compiling syn v2.0.119
    Checking wasmi_core v0.32.3
    Checking hashbrown v0.17.1
   Compiling num-derive v0.4.2
    Checking indexmap v2.14.1
   Compiling serde_derive v1.0.229
   Compiling thiserror-impl v2.0.20
   Compiling async-trait v0.1.92
    Checking hashbrown v0.14.5
    Checking dashmap v6.2.1
    Checking yrs v0.23.5 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5)
    Checking string-interner v0.17.0
    Checking wasmparser v0.258.0
    Checking wasmi_collections v0.32.3
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

    Checking wasmi v0.32.3
warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo clippy --fix --lib -p yrs -- -D warnings -D clippy::disallowed_methods` to apply 35 suggestions)
    Checking docs-core v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.07s
   Compiling proc-macro2 v1.0.107
   Compiling unicode-ident v1.0.24
   Compiling quote v1.0.47
   Compiling serde_core v1.0.229
   Compiling cfg-if v1.0.4
   Compiling rustversion v1.0.23
   Compiling crossbeam-utils v0.8.22
   Compiling zmij v1.0.23
   Compiling pin-project-lite v0.2.17
   Compiling getrandom v0.4.3
   Compiling smallvec v1.15.2
   Compiling parking_lot_core v0.9.12
   Compiling scopeguard v1.2.0
   Compiling serde_json v1.0.151
   Compiling thiserror v2.0.20
   Compiling serde v1.0.229
   Compiling memchr v2.8.3
   Compiling event-listener v5.4.2
   Compiling lock_api v0.4.14
   Compiling once_cell v1.21.4
   Compiling itoa v1.0.18
   Compiling hashbrown v0.14.5
   Compiling smallstr v0.3.1
   Compiling event-listener-strategy v0.5.4
   Compiling fastrand v2.5.0 (/work/core/vendor/fastrand-2.5.0)
   Compiling async-lock v3.4.2
   Compiling arc-swap v1.9.2
   Compiling dashmap v6.2.1
   Compiling syn v3.0.4
   Compiling thiserror-impl v2.0.20
   Compiling serde_derive v1.0.229
   Compiling async-trait v0.1.92
   Compiling yrs v0.23.5 (/work/native/vendor/yrs-0.23.5)
warning: unused import: `ArrayRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:441:33
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:459:34
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /docs-core/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
   Compiling docs-core v0.1.0 (/work/core)
    Finished `release` profile [optimized] target(s) in 6.48s
core/target/wasm32-unknown-unknown/release/docs_core.wasm (420763 bytes)
=== rust: build, test
   Compiling proc-macro2 v1.0.107
   Compiling quote v1.0.47
   Compiling unicode-ident v1.0.24
   Compiling libc v0.2.189
   Compiling serde_core v1.0.229
   Compiling crossbeam-utils v0.8.22
   Compiling rustversion v1.0.23
   Compiling smallvec v1.15.2
   Compiling pin-project-lite v0.2.17
   Compiling parking_lot_core v0.9.12
   Compiling zmij v1.0.23
   Compiling parking v2.2.1
   Compiling cfg-if v1.0.4
   Compiling serde v1.0.229
   Compiling serde_json v1.0.151
   Compiling thiserror v2.0.20
   Compiling scopeguard v1.2.0
   Compiling event-listener v5.4.2
   Compiling once_cell v1.21.4
   Compiling lock_api v0.4.14
   Compiling itoa v1.0.18
   Compiling hashbrown v0.14.5
   Compiling memchr v2.8.3
   Compiling smallstr v0.3.1
   Compiling fastrand v2.5.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core/vendor/fastrand-2.5.0)
   Compiling event-listener-strategy v0.5.4
   Compiling async-lock v3.4.2
   Compiling arc-swap v1.9.2
   Compiling syn v3.0.4
   Compiling dashmap v6.2.1
   Compiling thiserror-impl v2.0.20
   Compiling serde_derive v1.0.229
   Compiling async-trait v0.1.92
   Compiling yrs v0.23.5 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5)
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
   Compiling docs-core v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core)
    Finished `release` profile [optimized] target(s) in 11.96s
   Compiling serde_core v1.0.229
   Compiling cfg-if v1.0.4
   Compiling once_cell v1.21.4
   Compiling smallvec v1.15.2
   Compiling pin-project-lite v0.2.17
   Compiling parking v2.2.1
   Compiling zerocopy v0.8.56
   Compiling scopeguard v1.2.0
   Compiling libc v0.2.189
   Compiling zmij v1.0.23
   Compiling crossbeam-utils v0.8.22
   Compiling itoa v1.0.18
   Compiling memchr v2.8.3
   Compiling thiserror v2.0.20
   Compiling arc-swap v1.9.2
   Compiling foldhash v0.2.0
   Compiling lock_api v0.4.14
   Compiling fastrand v2.5.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core/vendor/fastrand-2.5.0)
   Compiling event-listener v5.4.2
   Compiling num-traits v0.2.19
   Compiling libm v0.2.16
   Compiling indexmap-nostd v0.4.0
   Compiling downcast-rs v1.2.1
   Compiling equivalent v1.0.2
   Compiling smallstr v0.3.1
   Compiling arrayvec v0.7.8
   Compiling bitflags v2.13.1
   Compiling spin v0.9.9
   Compiling wasmparser-nostd v0.100.2
   Compiling semver v1.0.28
   Compiling multi-stash v0.2.0
   Compiling event-listener-strategy v0.5.4
   Compiling async-lock v3.4.2
   Compiling parking_lot_core v0.9.12
   Compiling wasmi_core v0.32.3
   Compiling serde v1.0.229
   Compiling serde_json v1.0.151
   Compiling hashbrown v0.17.1
   Compiling indexmap v2.14.1
   Compiling wasmparser v0.258.0
   Compiling ahash v0.8.12
   Compiling hashbrown v0.14.5
   Compiling dashmap v6.2.1
   Compiling string-interner v0.17.0
   Compiling wasmi_collections v0.32.3
   Compiling yrs v0.23.5 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5)
   Compiling wasmi v0.32.3
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
   Compiling docs-core v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 10.49s
     Running unittests src/lib.rs (core/target/debug/deps/docs_core-698c38d5510e823d)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/bin/emit_update.rs (core/target/debug/deps/emit_update-8aeaa24411f447a1)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/fragment.rs (core/target/debug/deps/fragment-4525f12d1f4f24e5)

running 29 tests
test empty_document_is_empty_output ... ok
test a_hard_break_does_not_split_the_block_it_is_in ... ok
test empty_block_is_preserved_like_html ... ok
test escapes_html_in_text ... ok
test an_unknown_alignment_is_dropped_from_every_renderer ... ok
test escapes_json_in_text ... ok
test json_clamps_heading_level_like_html ... ok
test a_document_with_no_alignment_renders_exactly_as_it_did_before ... ok
test json_keeps_unknown_nodes_and_their_children ... ok
test json_of_an_empty_document_is_an_empty_doc_node ... ok
test json_marks_are_in_a_fixed_order ... ok
test json_names_every_font_mark ... ok
test json_reports_paragraph_alignment ... ok
test nested_blocks_do_not_duplicate_their_text ... ok
test reads_paragraphs_as_blocks ... ok
test renders_a_hard_break_in_every_renderer ... ok
test json_is_deterministic ... ok
test renders_every_font_mark_as_a_classed_span ... ok
test renders_marks ... ok
test renders_paragraphs_as_html ... ok
test renders_headings_and_lists ... ok
test renders_paragraph_alignment_as_a_class ... ok
test renders_block_indent_as_a_class ... ok
test renders_the_document_as_prosemirror_json ... ok
test renders_font_and_size_marks_as_classed_spans ... ok
test text_sibling_before_a_block_is_separated ... ok
test unknown_nodes_keep_their_text ... ok
test reports_block_indent_to_the_exporters ... ok
test renders_the_point_ladder_and_the_scale_it_replaced ... ok

test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/native_rule_convergence.rs (core/target/debug/deps/native_rule_convergence-ef3150737a2eca72)

running 1 test
test native_rule_updates_converge_through_server_rendering_and_snapshot_reload ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/no_host_imports.rs (core/target/debug/deps/no_host_imports-87abf30017af9908)

running 1 test
test no_host_imports ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/snapshot.rs (core/target/debug/deps/snapshot-70f768d4a54e977a)

running 5 tests
test garbage_does_not_verify ... ok
test a_snapshot_replayed_into_an_empty_doc_reproduces_the_document ... ok
test a_snapshot_of_this_document_verifies ... ok
test a_snapshot_with_a_parked_update_heals_once_its_dependency_arrives ... ok
test a_snapshot_of_a_different_document_does_not_verify ... ok

test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/wasm_trap_containment.rs (core/target/debug/deps/wasm_trap_containment-8082ecb4f8a73e4c)

running 2 tests
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
warning: unused import: `ArrayRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:441:33
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:459:34
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /docs-core/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
    Blocking29  waiting for file lock on build directory
|     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
    Finished `release` profile [optimized] target(s) in 0.06s
warning: unused import: `ArrayRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /docs-core/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /docs-core/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:441:33
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:459:34
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /docs-core/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /docs-core/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

core/target/wasm32-unknown-unknown/release/docs_core.wasm (420763 bytes)
warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /docs-core/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
    Finished `release` profile [optimized] target(s) in 0.07s
core/target/wasm32-unknown-unknown/release/docs_core.wasm (420763 bytes)
test borrow_leak_repro_trapping_unicode_mutation ... ok
test trap_on_one_document_does_not_corrupt_others_or_wedge_the_instance ... ok

test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 21.52s

     Running tests/wire_compat.rs (core/target/debug/deps/wire_compat-5a8cbf99ff99ba4e)

running 6 tests
test abi_rejects_garbage_without_panicking ... ok
test applies_hello ... ok
test applies_concurrent ... ok
test applies_formatted ... ok
test applies_unicode ... ok
test abi_round_trips_a_fixture ... ok

test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

   Doc-tests docs_core

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

=== the embedded wasm must match a fresh build
=== wire compatibility, both directions
--- regenerating fixtures from JS yjs
hello: 27 bytes
unicode: 33 bytes
formatted: 70 bytes
concurrent: 36 bytes
--- fixtures must be unchanged (they are the contract, not an output)
--- Rust reads what JS wrote
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
     Running tests/wire_compat.rs (target/debug/deps/wire_compat-5a8cbf99ff99ba4e)

running 6 tests
test abi_rejects_garbage_without_panicking ... ok
test applies_concurrent ... ok
test applies_formatted ... ok
test abi_round_trips_a_fixture ... ok
test applies_hello ... ok
test applies_unicode ... ok

test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

--- JS reads what Rust wrote
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

verify-rust: ok (81 bytes)
wire-gate: ok
=== go: vet, test, gofmt
ok  	github.com/carlosframework/docs/cmd/docs	15.069s
ok  	github.com/carlosframework/docs/internal/core	11.887s
ok  	github.com/carlosframework/docs/internal/docs	79.560s
ok  	github.com/carlosframework/docs/internal/docs/linkstore	0.185s
ok  	github.com/carlosframework/docs/internal/docs/principalstore	0.075s
ok  	github.com/carlosframework/docs/internal/docs/teamstate	0.014s
ok  	github.com/carlosframework/docs/internal/export	0.113s
ok  	github.com/carlosframework/docs/internal/fonts	0.010s
ok  	github.com/carlosframework/docs/internal/lint	0.041s
?   	github.com/carlosframework/docs/internal/pdf	[no test files]
=== go: build ./... (the app, not just the packages tests import)
gate: ok
=== native ===
   Compiling proc-macro2 v1.0.107
   Compiling quote v1.0.47
   Compiling unicode-ident v1.0.24
   Compiling serde_core v1.0.229
   Compiling cfg-if v1.0.4
   Compiling rustversion v1.0.23
   Compiling pin-project-lite v0.2.17
   Compiling zmij v1.0.23
   Compiling parking_lot_core v0.9.12
   Compiling crossbeam-utils v0.8.22
   Compiling getrandom v0.4.3
   Compiling smallvec v1.15.2
   Compiling scopeguard v1.2.0
   Compiling thiserror v2.0.20
   Compiling serde_json v1.0.151
   Compiling serde v1.0.229
   Compiling event-listener v5.4.2
   Compiling lock_api v0.4.14
   Compiling itoa v1.0.18
   Compiling hashbrown v0.14.5
   Compiling memchr v2.8.3
   Compiling once_cell v1.21.4
   Compiling smallstr v0.3.1
   Compiling event-listener-strategy v0.5.4
   Compiling fastrand v2.5.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core/vendor/fastrand-2.5.0)
   Compiling async-lock v3.4.2
   Compiling arc-swap v1.9.2
   Compiling dashmap v6.2.1
   Compiling syn v3.0.5
   Compiling thiserror-impl v2.0.20
   Compiling serde_derive v1.0.229
   Compiling async-trait v0.1.92
   Compiling yrs v0.23.5 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5)
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:441:33
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
441 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:459:34
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
459 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
   Compiling docs-native-crdt v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/crdt)
    Finished `release` profile [optimized] target(s) in 6.81s
   Compiling proc-macro2 v1.0.107
   Compiling quote v1.0.47
   Compiling unicode-ident v1.0.24
   Compiling libc v0.2.189
   Compiling serde_core v1.0.229
   Compiling zmij v1.0.23
   Compiling rustversion v1.0.23
   Compiling crossbeam-utils v0.8.22
   Compiling pin-project-lite v0.2.17
   Compiling parking v2.2.1
   Compiling smallvec v1.15.2
   Compiling parking_lot_core v0.9.12
   Compiling serde_json v1.0.151
   Compiling serde v1.0.229
   Compiling cfg-if v1.0.4
   Compiling scopeguard v1.2.0
   Compiling thiserror v2.0.20
   Compiling event-listener v5.4.2
   Compiling lock_api v0.4.14
   Compiling once_cell v1.21.4
   Compiling itoa v1.0.18
   Compiling hashbrown v0.14.5
   Compiling memchr v2.8.3
   Compiling smallstr v0.3.1
   Compiling fastrand v2.5.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/core/vendor/fastrand-2.5.0)
   Compiling event-listener-strategy v0.5.4
   Compiling async-lock v3.4.2
   Compiling arc-swap v1.9.2
   Compiling syn v3.0.5
   Compiling dashmap v6.2.1
   Compiling thiserror-impl v2.0.20
   Compiling serde_derive v1.0.229
   Compiling async-trait v0.1.92
   Compiling yrs v0.23.5 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5)
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: `yrs` (lib) generated 66 warnings (run `cargo fix --lib -p yrs` to apply 35 suggestions)
   Compiling docs-native-crdt v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/crdt)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 7.72s
     Running unittests src/lib.rs (native/crdt/target/debug/deps/docs_native_crdt-1ffa90d0f27ed8a0)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/bin/rule_wire_probe.rs (native/crdt/target/debug/deps/rule_wire_probe-93a9bba600a2a9ca)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/bin/wire_fixture.rs (native/crdt/target/debug/deps/wire_fixture-c995ae6e6d397175)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/delete_tail_review.rs (native/crdt/target/debug/deps/delete_tail_review-0f80fa74d3416e7f)

running 4 tests
test deletion_received_before_any_source_update_is_preserved ... ok
test partially_known_delete_range_remains_deleted_when_tail_arrives ... ok
test unknown_client_deletion_survives_snapshot_before_source_arrives ... ok
test partially_known_delete_range_survives_snapshot_before_tail_arrives ... ok

test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/replica.rs (native/crdt/target/debug/deps/replica-e0edc6cf7e306c61)

running 20 tests
test changing_block_preserves_existing_inline_formatting ... ok
test concatenated_log_applies_every_update ... ok
test paragraph_split_keeps_prefix_identity_and_suffix_marks ... ok
test deleting_and_replacing_inline_images_preserves_surrounding_text ... ok
test hard_break_is_inline_and_code_enter_does_not_split_block ... ok
test reads_existing_yjs_fragment_without_rewriting ... ok
test concurrent_insertions_and_own_undo_preserve_peer ... ok
test merged_pending_updates_preserve_dependencies_deletes_and_duplicate_delivery ... ok
test select_all_replaces_multiple_native_text_nodes_and_terminal_separator ... ok
test utf16_edits_preserve_identity_and_marks ... ok
test distinct_display_generations_preserve_peer_and_authoritative_undo ... ok
test selection_anchor_tracks_peer_insertion_in_utf16 ... ok
test toggling_existing_list_changes_type_and_lifts_without_nesting ... ok
test optimistic_newline_typeahead_resolves_new_paragraph_in_source ... ok
test cross_paragraph_replacement_keeps_prefix_id_and_formatted_suffix ... ok
test list_item_sink_and_lift_keep_text_and_marks ... ok
test rich_paste_at_empty_block_keeps_heading_and_list_structure ... ok
test rich_paste_preserves_native_marks_and_existing_suffix ... ok
test rich_paste_rule_retains_suffix_as_separate_paragraph ... ok
test input_rules_transform_and_backspace_restore_typed_prefix ... ok

test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s

     Running tests/rule_delta_convergence.rs (native/crdt/target/debug/deps/rule_delta_convergence-7f1d995951d2b486)

running 1 test
test every_rule_delta_converges_with_remote_apply ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s

     Running tests/snapshot.rs (native/crdt/target/debug/deps/snapshot-755ea7efb3408036)

running 1 test
test a_snapshot_with_a_parked_update_heals_once_its_dependency_arrives ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/structural_commands.rs (native/crdt/target/debug/deps/structural_commands-0b4a5641ffbdd361)

running 5 tests
test quote_toggle_lifts_only_selected_block_preserving_prefix_identity_and_marks ... ok
test formatting_does_not_merge_unrelated_existing_adjacent_lists ... ok
test quote_range_can_lift_last_to_first_without_stale_ids ... ok
test quote_wrap_groups_selected_paragraphs_in_one_container ... ok
test adjacent_list_wrapping_merges_only_after_all_targets_are_applied ... ok

test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

   Doc-tests docs_native_crdt

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

   Compiling version_check v0.9.5
   Compiling serde_core v1.0.229
   Compiling zerocopy v0.8.56
   Compiling proc-macro2 v1.0.107
   Compiling cfg-if v1.0.4
   Compiling once_cell v1.21.4
   Compiling autocfg v1.5.1
   Compiling quote v1.0.47
   Compiling unicode-ident v1.0.24
   Compiling serde v1.0.229
   Compiling paste v1.0.15
   Compiling libm v0.2.16
   Compiling downcast-rs v1.2.1
   Compiling zmij v1.0.23
   Compiling indexmap-nostd v0.4.0
   Compiling smallvec v1.15.2
   Compiling multi-stash v0.2.0
   Compiling arrayvec v0.7.8
   Compiling spin v0.9.9
   Compiling serde_json v1.0.151
   Compiling wasmparser-nostd v0.100.2
   Compiling itoa v1.0.18
   Compiling memchr v2.8.3
   Compiling ahash v0.8.12
   Compiling num-traits v0.2.19
   Compiling syn v2.0.119
   Compiling wasmi_core v0.32.3
   Compiling num-derive v0.4.2
   Compiling hashbrown v0.14.5
   Compiling string-interner v0.17.0
   Compiling wasmi_collections v0.32.3
   Compiling wasmi v0.32.3
   Compiling docs-native-host v0.1.0 (/home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/host)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 7.11s
     Running unittests src/lib.rs (native/host/target/debug/deps/docs_native_host-e64b9f7cfe9d7d5e)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/sandbox.rs (native/host/target/debug/deps/sandbox-672ce98f639da64f)

running 5 tests
test native_boundary_rejects_client_ids_that_v1_decoder_would_truncate ... ok
test interpreter_executes_native_crdt_without_host_imports ... ok
test selection_anchor_call_does_not_poison_source_interpreter ... ok
test failed_replica_cannot_be_reused ... ok
test generated_source_delta_applies_to_authority_with_protocol_client_ids ... ok

test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s

   Doc-tests docs_native_host

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s


added 20 packages in 399ms
warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

warning: unused import: `ArrayRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:17:39
   |
17 | use crate::types::array::{ArrayEvent, ArrayRef};
   |                                       ^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

warning: unused imports: `XmlElementRef` and `XmlTextRef`
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:22:25
   |
22 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef};
   |                         ^^^^^^^^^^^^^                          ^^^^^^^^^^

warning: value assigned to `left` is never read
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:288:24
    |
288 |         let mut left = None;
    |                        ^^^^ this value is reassigned later and never used
...
334 |                 left = parent_branch.map.get(sub).cloned();
    |                 ------------------------------------------ `left` is overwritten here before the previous value is read
    |
    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:644:29
    |
644 |                 if let Some(mut left) = this.left {
    |                             ----^^^^
    |                             |
    |                             help: remove this `mut`
    |
    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `ptr`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:730:25
    |
730 |                     let ptr = BranchPtr::from(branch);
    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_ptr`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `branch`
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:447:35
    |
447 |                 ItemContent::Type(branch) => {
    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch`

warning: method `clock_end` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block.rs:136:12
    |
126 | impl BlockCell {
    | -------------- method in this implementation
...
136 |     pub fn clock_end(&self) -> u32 {
    |            ^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: method `get_block_mut` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:79:8
   |
23 | impl ClientBlockList {
   | -------------------- method in this implementation
...
79 |     fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> {
   |        ^^^^^^^^^^^^^

warning: methods `contains` and `get_block_mut` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:306:12
    |
299 | impl BlockStore {
    | --------------- methods in this implementation
...
306 |     pub fn contains(&self, id: &ID) -> bool {
    |            ^^^^^^^^
...
381 |     pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> {
    |                   ^^^^^^^^^^^^^

warning: struct `Blocks` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:486:19
    |
486 | pub(crate) struct Blocks<'a> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_store.rs:492:8
    |
491 | impl<'a> Blocks<'a> {
    | ------------------- associated function in this implementation
492 |     fn new(update: &'a BlockStore) -> Self {
    |        ^^^

warning: constant `WEAK_REF_FLAGS_QUOTE` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:216:7
    |
216 | const WEAK_REF_FLAGS_QUOTE: u8 = 0b0000_0001;
    |       ^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:218:7
    |
218 | const WEAK_REF_FLAGS_START_ASSOC: u8 = 0b0000_0010;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_ASSOC` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:220:7
    |
220 | const WEAK_REF_FLAGS_END_ASSOC: u8 = 0b0000_0100;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_START_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:222:7
    |
222 | const WEAK_REF_FLAGS_START_UNBOUNDED: u8 = 0b0000_1000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_END_UNBOUNDED` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:224:7
    |
224 | const WEAK_REF_FLAGS_END_UNBOUNDED: u8 = 0b0001_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: constant `WEAK_REF_FLAGS_PARENT_ROOT` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:226:7
    |
226 | const WEAK_REF_FLAGS_PARENT_ROOT: u8 = 0b0010_0000;
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: method `blocks` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:45:19
   |
29 | impl UpdateBlocks {
   | ----------------- method in this implementation
...
45 |     pub(crate) fn blocks(&self) -> Blocks<'_> {
   |                   ^^^^^^

warning: methods `last_id` and `into_block` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:934:19
    |
879 | impl BlockCarrier {
    | ----------------- methods in this implementation
...
934 |     pub(crate) fn last_id(&self) -> ID {
    |                   ^^^^^^^
...
963 |     pub fn into_block(self) -> Option<Box<Item>> {
    |            ^^^^^^^^^^

warning: struct `Blocks` is never constructed
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1076:19
     |
1076 | pub(crate) struct Blocks<'a> {
     |                   ^^^^^^

warning: associated function `new` is never used
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/update.rs:1082:8
     |
1081 | impl<'a> Blocks<'a> {
     | ------------------- associated function in this implementation
1082 |     fn new(update: &'a UpdateBlocks) -> Self {
     |        ^^^

warning: methods `move_to`, `forward`, `backward`, and `values` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:73:12
    |
 23 | impl BlockIter {
    | -------------- methods in this implementation
...
 73 |     pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) {
    |            ^^^^^^^
...
 99 |     pub fn forward<T: ReadTxn>(&mut self, txn: &T, len: u32) {
    |            ^^^^^^^
...
186 |     pub fn backward<T: ReadTxn>(&mut self, txn: &mut T, mut len: u32) {
    |            ^^^^^^^^
...
514 |     pub fn values<'a, 'txn, T: ReadTxn>(
    |            ^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:522:12
    |
522 | pub struct Values<'a, 'txn> {
    |            ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/block_iter.rs:528:8
    |
527 | impl<'a, 'txn> Values<'a, 'txn> {
    | ------------------------------- associated function in this implementation
528 |     fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self {
    |        ^^^

warning: method `remove_at` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/branch.rs:427:19
    |
245 | impl Branch {
    | ----------- method in this implementation
...
427 |     pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 {
    |                   ^^^^^^^^^

warning: trait `BlockIterator` is never used
 --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:7:18
  |
7 | pub(crate) trait BlockIterator: TxnIterator<Item = ItemPtr> + Sized {
  |                  ^^^^^^^^^^^^^

warning: trait `BlockSliceIterator` is never used
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:21:18
   |
21 | pub(crate) trait BlockSliceIterator: TxnIterator<Item = ItemSlice> + Sized {
   |                  ^^^^^^^^^^^^^^^^^^

warning: struct `BlockSlices` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:283:19
    |
283 | pub(crate) struct BlockSlices<I>(I)
    |                   ^^^^^^^^^^^

warning: struct `RangeIter` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:311:19
    |
311 | pub(crate) struct RangeIter<I> {
    |                   ^^^^^^^^^

warning: associated items `new` and `begin` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:322:8
    |
318 | / impl<I> RangeIter<I>
319 | | where
320 | |     I: TxnIterator<Item = ItemPtr>,
    | |___________________________________- associated items in this implementation
321 |   {
322 |       fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self {
    |          ^^^
...
331 |       fn begin<T: ReadTxn>(&mut self, txn: &T, start_offset: &mut u32) -> Option<ItemPtr> {
    |          ^^^^^

warning: enum `RangeIterState` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:439:6
    |
439 | enum RangeIterState {
    |      ^^^^^^^^^^^^^^

warning: struct `Values` is never constructed
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:450:19
    |
450 | pub(crate) struct Values<I> {
    |                   ^^^^^^

warning: associated function `new` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/iter.rs:456:8
    |
455 | impl<I> Values<I> {
    | ----------------- associated function in this implementation
456 |     fn new(iter: I) -> Self {
    |        ^^^

warning: method `get_item` is never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/moving.rs:640:19
    |
410 | impl StickyIndex {
    | ---------------- method in this implementation
...
640 |     pub(crate) fn get_item<T: ReadTxn>(&self, txn: &T) -> Option<ItemPtr> {
    |                   ^^^^^^^^

warning: methods `contains_id`, `right`, and `left` are never used
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/slice.rs:174:12
    |
100 | impl ItemSlice {
    | -------------- methods in this implementation
...
174 |     pub fn contains_id(&self, id: &ID) -> bool {
    |            ^^^^^^^^^^^
...
244 |     pub fn right(&self) -> Option<ItemSlice> {
    |            ^^^^^
...
264 |     pub fn left(&self) -> Option<ItemSlice> {
    |            ^^^^

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:63:18
   |
63 |     pub fn added(&self) -> SubdocsEventIter {
   |                  ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                  |
   |                  the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
   |
63 |     pub fn added(&self) -> SubdocsEventIter<'_> {
   |                                            ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:69:20
   |
69 |     pub fn removed(&self) -> SubdocsEventIter {
   |                    ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                    |
   |                    the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
69 |     pub fn removed(&self) -> SubdocsEventIter<'_> {
   |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/event.rs:75:19
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter {
   |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                   |
   |                   the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
75 |     pub fn loaded(&self) -> SubdocsEventIter<'_> {
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/id_set.rs:595:34
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks {
    |                                  ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
595 |     pub(crate) fn deleted_blocks(&self) -> DeletedBlocks<'_> {
    |                                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:345:20
    |
345 |     pub fn subdocs(&self) -> SubdocsIter {
    |                    ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                    |
    |                    the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
345 |     pub fn subdocs(&self) -> SubdocsIter<'_> {
    |                                         ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:351:25
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids {
    |                         ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                         |
    |                         the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
351 |     pub fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                              ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:431:28
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<Store>> {
    |                            ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                            |
    |                            the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
431 |     pub(crate) fn try_read(&self) -> Option<RwLockReadGuard<'_, Store>> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:436:33
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<Store> {
    |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
436 |     pub(crate) fn read_blocking(&self) -> RwLockReadGuard<'_, Store> {
    |                                                           +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:445:30
    |
445 |     pub(crate) fn read_async(&self) -> Read<Store> {
    |                              ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                              |
    |                              the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
445 |     pub(crate) fn read_async(&self) -> Read<'_, Store> {
    |                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:449:29
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<Store>> {
    |                             ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
449 |     pub(crate) fn try_write(&self) -> Option<RwLockWriteGuard<'_, Store>> {
    |                                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:454:34
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<Store> {
    |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                  |
    |                                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
454 |     pub(crate) fn write_blocking(&self) -> RwLockWriteGuard<'_, Store> {
    |                                                             +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/store.rs:463:31
    |
463 |     pub(crate) fn write_async(&self) -> Write<Store> {
    |                               ^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
    |                               |
    |                               the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
463 |     pub(crate) fn write_async(&self) -> Write<'_, Store> {
    |                                               +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:166:18
    |
166 |     fn root_refs(&self) -> RootRefs {
    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
    |                  |
    |                  the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
166 |     fn root_refs(&self) -> RootRefs<'_> {
    |                                    ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:173:21
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids {
    |                     ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
173 |     fn subdoc_guids(&self) -> SubdocGuids<'_> {
    |                                          ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transaction.rs:179:16
    |
179 |     fn subdocs(&self) -> SubdocsIter {
    |                ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                |
    |                the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
179 |     fn subdocs(&self) -> SubdocsIter<'_> {
    |                                     ++++

warning: hiding a lifetime that's elided elsewhere is confusing
    --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/types/mod.rs:1108:17
     |
1108 |     pub fn iter(&self) -> EventsIter {
     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
     |                 |
     |                 the lifetime is elided here
     |
     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
     |
1108 |     pub fn iter(&self) -> EventsIter<'_> {
     |                                     ++++

warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/observer.rs:280:33
    |
280 | pub type Subscription = Arc<dyn Drop + 'static>;
    |                                 ^^^^
    |
    = note: `#[warn(dyn_drop)]` on by default

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/state_vector.rs:93:17
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<ClientID, u32> {
   |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
93 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, ClientID, u32> {
   |                                                            +++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/sync/awareness.rs:178:17
    |
178 |     pub fn iter(&self) -> AwarenessIter {
    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
178 |     pub fn iter(&self) -> AwarenessIter<'_> {
    |                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:18:21
   |
18 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError>;
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
18 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError>;
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:29:25
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError>;
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
29 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError>;
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:43:33
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
   |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                                 |
   |                                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
43 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
   |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:60:29
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
   |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                             |
   |                             the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
60 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
   |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:71:17
   |
71 |     fn transact(&self) -> Transaction;
   |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
   |                 |
   |                 the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
71 |     fn transact(&self) -> Transaction<'_>;
   |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:83:21
   |
83 |     fn transact_mut(&self) -> TransactionMut;
   |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
83 |     fn transact_mut(&self) -> TransactionMut<'_>;
   |                                             ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:87:21
   |
87 |     fn try_transact(&self) -> Result<Transaction, TransactionAcqError> {
   |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
   |                     |
   |                     the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
87 |     fn try_transact(&self) -> Result<Transaction<'_>, TransactionAcqError> {
   |                                                 ++++

warning: hiding a lifetime that's elided elsewhere is confusing
  --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:94:25
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut, TransactionAcqError> {
   |                         ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
   |                         |
   |                         the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
   |
94 |     fn try_transact_mut(&self) -> Result<TransactionMut<'_>, TransactionAcqError> {
   |                                                        ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:101:33
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut, TransactionAcqError>
    |                                 ^^^^^                       ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                                 |
    |                                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
101 |     fn try_transact_mut_with<T>(&self, origin: T) -> Result<TransactionMut<'_>, TransactionAcqError>
    |                                                                           ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:115:29
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut
    |                             ^^^^^                ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                             |
    |                             the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
115 |     fn transact_mut_with<T>(&self, origin: T) -> TransactionMut<'_>
    |                                                                ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:123:17
    |
123 |     fn transact(&self) -> Transaction {
    |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
    |                 |
    |                 the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
123 |     fn transact(&self) -> Transaction<'_> {
    |                                      ++++

warning: hiding a lifetime that's elided elsewhere is confusing
   --> /home/paulca/.local/state/amadan/runner/repos/oficina__docs/wt/fix__keymail-signin/native/vendor/yrs-0.23.5/src/transact.rs:128:21
    |
128 |     fn transact_mut(&self) -> TransactionMut {
    |                     ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
    |                     |
    |                     the lifetime is elided here
    |
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
help: use `'_` for type paths
    |
128 |     fn transact_mut(&self) -> TransactionMut<'_> {
    |                                             ++++

Rule wire replay passed 24 incremental/snapshot comparisons and four exact final bodies.
Native checks passed (core-only=1).
diff --git a/internal/docs/admission_test.go b/internal/docs/admission_test.go
index 0620ac5..e7af3d0 100644
--- a/internal/docs/admission_test.go
+++ b/internal/docs/admission_test.go
@@ -3,6 +3,7 @@ package docs
import (
"context"
"errors"
+ "log/slog"
"net/http"
"net/http/httptest"
"testing"
@@ -152,12 +153,14 @@ func TestAdmissionMailerFailsClosed(t *testing.T) {
granted: func(string) (bool, error) { return false, errors.New("database is stalled") },
}
recorder := &recordingMailer{next: loggingMailerStub{}}
- sender := admissionMailer{next: recorder, list: list}
+ sender := newMailQueue(recorder, listAdmits(list), nil, slog.New(slog.DiscardHandler))
+ t.Cleanup(sender.close)
for _, address := range []string{"mallory@example.com", "alice@example.com"} {
if err := sender.Send(t.Context(), address, "subject", "body"); err != nil {
t.Fatal(err)
}
}
+ sender.wait()
if recorder.sends != 1 || recorder.lastTo != "alice@example.com" {
t.Fatalf("delivery count=%d recipient=%q", recorder.sends, recorder.lastTo)
}
diff --git a/internal/docs/app.go b/internal/docs/app.go
index c834041..c122cff 100644
--- a/internal/docs/app.go
+++ b/internal/docs/app.go
@@ -153,7 +153,8 @@ type Config struct {
// normalizeAddress) — a real config file has spaces after its
// commas, and people type capitals into an email field.
//
- // admissionMailer restricts email delivery, and rauth.Config.Authorize
+ // The sign-in mail queue restricts email delivery (mailqueue.go,
+ // listAdmits), and rauth.Config.Authorize
// checks verified identities before minting a session. Classification
// does not depend on admission, so an OAuth start cannot reveal membership.
//
@@ -280,6 +281,7 @@ type App struct {
store *Store
handlers *handlers
mailRecorder *recordingMailer // nil outside development; see auth.go
+ signinMail *mailQueue // sign-in links, sent after the response
}
// BootSchema is everything New applies at boot, in apply order.
@@ -460,7 +462,17 @@ func New(cfg Config) (*App, error) {
return nil, fmt.Errorf("docs: build renderer: %w", err)
}
- authPlugin, err := newAuthPlugin(cfg, d.Writer(), instanceKey, mailer, list, logger)
+ // Sign-in links go out after the response, from a worker that asks
+ // the allowlist first (mailqueue.go). Closed by Close, or below if
+ // New fails after this point.
+ signinMail := newMailQueue(mailer, listAdmits(list), nil, logger)
+ built := false
+ defer func() {
+ if !built {
+ signinMail.close()
+ }
+ }()
+ authPlugin, err := newAuthPlugin(cfg, d.Writer(), instanceKey, signinMail, list, logger)
if err != nil {
rt.Close(context.Background())
d.Close()
@@ -697,7 +709,8 @@ func New(cfg Config) (*App, error) {
mux := http.NewServeMux()
mux.Handle("/", r)
- return &App{cfg: cfg, db: d, mux: mux, logger: logger, core: rt, store: store, handlers: h, mailRecorder: mailRecorder}, nil
+ built = true
+ return &App{cfg: cfg, db: d, mux: mux, logger: logger, core: rt, store: store, handlers: h, mailRecorder: mailRecorder, signinMail: signinMail}, nil
}
// Store returns the app's document store — models.go's Document,
@@ -718,6 +731,10 @@ func (a *App) Handler() *http.ServeMux { return a.mux }
// module. NewForTest registers this as a t.Cleanup.
func (a *App) Close() error {
var errs []error
+ // First, while the database the allowlist reads is still open.
+ if a.signinMail != nil {
+ a.signinMail.close()
+ }
if a.core != nil {
if err := a.core.Close(context.Background()); err != nil {
errs = append(errs, err)
diff --git a/internal/docs/auth.go b/internal/docs/auth.go
index fa24870..f7e6e48 100644
--- a/internal/docs/auth.go
+++ b/internal/docs/auth.go
@@ -99,7 +99,7 @@ type recordingMailer struct {
mu sync.Mutex
next mail.Sender
// lastTo is recorded alongside lastBody, and it is not decoration.
- // admissionMailer leaves a refused address with exactly the 303 ?sent=1 a
+ // The mail queue leaves a refused address with exactly the 303 ?sent=1 a
// real one gets — deliberately, so the endpoint is not a membership
// oracle — so a caller that reads only lastBody cannot tell "a link
// was mailed to this address" from "somebody else's link is still
@@ -277,23 +277,20 @@ func resolveAllowlist(cfg Config) (allowlist, error) {
return allowlist{}, fmt.Errorf("docs: $DOCS_ALLOWED_ADDRESSES is empty and Env is %q, not %q — refusing to start with no allowlist configured: an instance-per-team app admitting nobody would look identical to one working correctly (see resolveAllowlist's own doc comment), so this refuses rather than boots quietly wrong; set $DOCS_ALLOWED_ADDRESSES to this team's address(es)", cfg.Env, "development")
}
-// admissionMailer restricts delivery without exposing membership through the
-// choice of sign-in ceremony. All addresses reach classification and the same
-// rate limits; only admitted addresses receive mail. Callback admission remains
-// authoritative, including for tokens minted before an address was removed.
-// The underlying flow stores an expiring token before Send; a suppressed token
-// is never delivered. A failed grant lookup suppresses delivery too.
-type admissionMailer struct {
- next mail.Sender
- list allowlist
-}
-
-func (m admissionMailer) Send(ctx context.Context, to, subject, body string) error {
- admitted, err := m.list.allows(to)
- if err != nil || !admitted {
- return nil
+// listAdmits is the sign-in mail queue's admission check (mailqueue.go):
+// list.allows, with a failed grant lookup refusing, as a refusal always
+// has here. It runs on the queue's worker, after the response: every
+// address reaches classification, the same rate limits and the same
+// enqueue, so neither POST /signin's answer nor its timing says who is
+// admitted (Astra on oficina/slides #20: a send inside the request made
+// a permitted address wait for SMTP, 252 ms against 0.35 ms). Callback
+// admission remains authoritative, including for tokens minted before
+// an address was removed; a token never delivered is never redeemed.
+func listAdmits(list allowlist) func(string) bool {
+ return func(to string) bool {
+ admitted, err := list.allows(to)
+ return err == nil && admitted
}
- return m.next.Send(ctx, to, subject, body)
}
// requireAdmission re-asks the front-door question on every request, and
@@ -416,7 +413,7 @@ func newAuthPlugin(cfg Config, writer *sql.DB, instanceKey string, mailer mail.S
DB: writer,
Origin: cfg.Origin,
InstanceKey: instanceKey,
- Mailer: admissionMailer{next: mailer, list: list},
+ Mailer: mailer, // the sign-in mail queue (mailqueue.go)
Authorize: list.admits,
Logger: logger,
Subject: chrome.EmailSubject("Docs"),
diff --git a/internal/docs/auth_allowlist_test.go b/internal/docs/auth_allowlist_test.go
index 6b6c943..118a53d 100644
--- a/internal/docs/auth_allowlist_test.go
+++ b/internal/docs/auth_allowlist_test.go
@@ -59,7 +59,7 @@ func newAllowlistedTestApp(t *testing.T, allowed string) *App {
// uses to skip signin's own keymail classification (which would
// otherwise make a real outbound DNS/HTTPS call per address, per
// signin's own README, entirely beside the point of what these tests
-// check). force=1 selects email but does not bypass admissionMailer.
+// check). force=1 selects email but does not bypass the mail queue's admission check.
func postSignin(app *App, address string) *httptest.ResponseRecorder {
form := url.Values{"address": {address}, "force": {"1"}}
req := httptest.NewRequest(http.MethodPost, "/signin", strings.NewReader(form.Encode()))
@@ -77,6 +77,7 @@ func postSignin(app *App, address string) *httptest.ResponseRecorder {
// back), which a test proving the ABSENCE of a send cannot use: there
// is no link to find in an empty body.
func lastMailBody(app *App) string {
+ app.signinMail.wait() // links are sent after the response
app.mailRecorder.mu.Lock()
defer app.mailRecorder.mu.Unlock()
return app.mailRecorder.lastBody
diff --git a/internal/docs/auth_keymail_test.go b/internal/docs/auth_keymail_test.go
index e360963..769897c 100644
--- a/internal/docs/auth_keymail_test.go
+++ b/internal/docs/auth_keymail_test.go
@@ -172,6 +172,7 @@ func keymailOAuthChild(t *testing.T) {
if rec.Code != 303 || rec.Header().Get("Location") != "/signin?sent=1" {
t.Fatalf("mail start: %d %s", rec.Code, rec.Header().Get("Location"))
}
+ app.signinMail.wait()
app.mailRecorder.mu.Lock()
sent := app.mailRecorder.sends
app.mailRecorder.mu.Unlock()
@@ -229,6 +230,7 @@ func keymailOAuthChild(t *testing.T) {
}
}
}
+ app.signinMail.wait()
app.mailRecorder.mu.Lock()
sent := app.mailRecorder.sends
app.mailRecorder.mu.Unlock()
diff --git a/internal/docs/home_router_integration_test.go b/internal/docs/home_router_integration_test.go
index 399903a..d5e3772 100644
--- a/internal/docs/home_router_integration_test.go
+++ b/internal/docs/home_router_integration_test.go
@@ -97,11 +97,15 @@ func routerRedirect(t *testing.T, rec *httptest.ResponseRecorder, want string) s
}
func (b *routerBrowser) localLink(t *testing.T, address string) string {
t.Helper()
+ b.f.app.signinMail.wait()
+ b.f.app.mailRecorder.mu.Lock()
before := b.f.app.mailRecorder.sends
+ b.f.app.mailRecorder.mu.Unlock()
rec := b.do("POST", "/signin", url.Values{"address": {address}, "force": {"1"}}.Encode())
if rec.Code != 303 || !strings.Contains(rec.Header().Get("Location"), "sent=1") {
t.Fatal("local mail begin failed", rec.Code)
}
+ b.f.app.signinMail.wait() // the link is sent after the response
b.f.app.mailRecorder.mu.Lock()
to, body, after := b.f.app.mailRecorder.lastTo, b.f.app.mailRecorder.lastBody, b.f.app.mailRecorder.sends
b.f.app.mailRecorder.mu.Unlock()
diff --git a/internal/docs/mailqueue.go b/internal/docs/mailqueue.go
new file mode 100644
index 0000000..d9e1cc5
--- /dev/null
+++ b/internal/docs/mailqueue.go
@@ -0,0 +1,191 @@
+package docs
+
+import (
+ "context"
+ "fmt"
+ "log/slog"
+ "sync"
+ "sync/atomic"
+ "time"
+
+ "amadan.net/rastrillo/rastrillo/mail"
+)
+
+// mailQueue is the sign-in mailer the auth plugin is given: Send queues
+// the link and returns at once, and one background worker decides
+// whether the address may have it and only then talks to SMTP.
+//
+// Both halves are the no-oracle guarantee, measured rather than
+// reasoned about. When the send ran inside the request, a permitted
+// address waited for the SMTP round trip before its `303 ?sent=1` and a
+// denied one did not: 252 ms against 0.35 ms (Astra on oficina/slides
+// #20). A response time is an answer like any other. So POST /signin
+// does the same synchronous work for every address — the auth plugin's
+// budgets, its link row, this enqueue — and the one admission-dependent
+// step, the send, happens after the response, where nobody can time it.
+//
+// The request path is Send, and Send does no I/O and never blocks: not
+// a send, not an admission check, not even a log line. Every address's
+// link is queued, permitted or not, so how full the queue is never
+// depends on admission either; the worker decides afterwards. A full
+// queue drops the link and counts it in an atomic; the worker logs the
+// count when it next runs. The person is answered exactly as when the
+// queue is empty, because a different answer for a full queue would be
+// one more thing to read. (Astra on #20, round 2.)
+//
+// The worker survives a panic in the mailer: it recovers per message,
+// logs, and keeps draining. Delivery failures are logged, never
+// surfaced: a failure only a permitted address can reach is the oracle
+// again.
+//
+// close drains what is queued within drainTimeout. Past it, the send
+// in flight is cancelled through its context, everything still queued
+// is abandoned with a log line, and close waits a short grace for the
+// worker to stop. A mailer that ignores its context is the only way a
+// worker outlives close, and that is logged too.
+type mailQueue struct {
+ next mail.Sender
+ admits func(to string) bool
+ // gate, when set, is read off the request's context at enqueue time
+ // and travels with the link; the worker sends only if it said yes.
+ gate func(context.Context) bool
+ logger *slog.Logger
+
+ drainTimeout time.Duration
+ sendTimeout time.Duration
+
+ mu sync.RWMutex // held for reading by Send, for writing by close
+ closed bool
+ jobs chan mailJob
+ dropped atomic.Int64
+ pending sync.WaitGroup
+
+ ctx context.Context // cancelled when close gives up waiting
+ cancel context.CancelFunc
+ done chan struct{}
+}
+
+type mailJob struct {
+ to, subject, body string
+ gated bool
+}
+
+const (
+ mailQueueDepth = 64
+ mailSendTimeout = time.Minute
+ mailDrainTimeout = 30 * time.Second
+ mailAbandonGrace = 5 * time.Second
+)
+
+func newMailQueue(next mail.Sender, admits func(string) bool, gate func(context.Context) bool, logger *slog.Logger) *mailQueue {
+ if logger == nil {
+ logger = slog.Default()
+ }
+ ctx, cancel := context.WithCancel(context.Background())
+ q := &mailQueue{next: next, admits: admits, gate: gate, logger: logger,
+ drainTimeout: mailDrainTimeout, sendTimeout: mailSendTimeout,
+ jobs: make(chan mailJob, mailQueueDepth), ctx: ctx, cancel: cancel,
+ done: make(chan struct{})}
+ go q.run()
+ return q
+}
+
+// Send queues one link. It never blocks, never does I/O and never
+// fails: the request that called it answers the same way whatever
+// happens next.
+func (q *mailQueue) Send(ctx context.Context, to, subject, body string) error {
+ job := mailJob{to: to, subject: subject, body: body, gated: true}
+ if q.gate != nil {
+ job.gated = q.gate(ctx)
+ }
+ q.mu.RLock()
+ defer q.mu.RUnlock()
+ if q.closed {
+ q.dropped.Add(1)
+ return nil
+ }
+ q.pending.Add(1)
+ select {
+ case q.jobs <- job:
+ default:
+ q.pending.Done()
+ q.dropped.Add(1)
+ }
+ return nil
+}
+
+func (q *mailQueue) run() {
+ defer close(q.done)
+ abandoned := 0
+ for job := range q.jobs {
+ q.reportDrops()
+ if q.ctx.Err() != nil {
+ abandoned++
+ } else {
+ q.deliver(job)
+ }
+ q.pending.Done()
+ }
+ q.reportDrops()
+ if abandoned > 0 {
+ q.logger.Error("docs: sign-in links abandoned at shutdown", "count", abandoned)
+ }
+}
+
+// reportDrops logs the links Send had to drop since the last report.
+// Here, on the worker, so the request path never writes a log line.
+func (q *mailQueue) reportDrops() {
+ if n := q.dropped.Swap(0); n > 0 {
+ q.logger.Error("docs: sign-in mail queue full; links dropped", "count", n)
+ }
+}
+
+// deliver sends one link if it may go. A panic in the admission check
+// or the mailer is this message's failure, not the process's.
+func (q *mailQueue) deliver(job mailJob) {
+ defer func() {
+ if p := recover(); p != nil {
+ q.logger.Error("docs: sign-in mail worker recovered from a panic", "panic", fmt.Sprint(p))
+ }
+ }()
+ if !job.gated || !q.admits(job.to) {
+ // Not admitted: the link the auth plugin stored is never
+ // delivered, so it is never redeemed. No address in the log.
+ return
+ }
+ ctx, cancel := context.WithTimeout(q.ctx, q.sendTimeout)
+ defer cancel()
+ if err := q.next.Send(ctx, job.to, job.subject, job.body); err != nil {
+ q.logger.Error("docs: send sign-in link", "err", err)
+ }
+}
+
+// wait blocks until every link queued so far has been sent or refused.
+// Tests use it to read the mailer afterwards.
+func (q *mailQueue) wait() { q.pending.Wait() }
+
+// close stops taking links and drains what is queued, within
+// drainTimeout; then it cancels, abandons the rest, and stops the
+// worker (see the type's comment).
+func (q *mailQueue) close() {
+ q.mu.Lock()
+ if q.closed {
+ q.mu.Unlock()
+ return
+ }
+ q.closed = true
+ close(q.jobs)
+ q.mu.Unlock()
+ defer q.cancel()
+ select {
+ case <-q.done:
+ return
+ case <-time.After(q.drainTimeout):
+ }
+ q.cancel()
+ select {
+ case <-q.done:
+ case <-time.After(mailAbandonGrace):
+ q.logger.Error("docs: sign-in mail worker ignored cancellation; left running")
+ }
+}
diff --git a/internal/docs/mailqueue_test.go b/internal/docs/mailqueue_test.go
new file mode 100644
index 0000000..400bd1d
--- /dev/null
+++ b/internal/docs/mailqueue_test.go
@@ -0,0 +1,180 @@
+package docs
+
+import (
+ "context"
+ "fmt"
+ "log/slog"
+ "runtime"
+ "strings"
+ "sync"
+ "testing"
+ "time"
+)
+
+// stuckHandler is a slog handler whose every write blocks until release
+// is closed: a log sink that has stalled, as a full pipe does. It
+// remembers what it was finally allowed to write.
+type stuckHandler struct {
+ release chan struct{}
+ mu *sync.Mutex
+ msgs *[]string
+}
+
+func (h stuckHandler) Enabled(context.Context, slog.Level) bool { return true }
+func (h stuckHandler) Handle(_ context.Context, r slog.Record) error {
+ <-h.release
+ h.mu.Lock()
+ *h.msgs = append(*h.msgs, r.Message)
+ h.mu.Unlock()
+ return nil
+}
+func (h stuckHandler) WithAttrs([]slog.Attr) slog.Handler { return h }
+func (h stuckHandler) WithGroup(string) slog.Handler { return h }
+
+// funcSender adapts a function to mail.Sender.
+type funcSender func(ctx context.Context, to string) error
+
+func (f funcSender) Send(ctx context.Context, to, _, _ string) error { return f(ctx, to) }
+
+func everyone(string) bool { return true }
+
+// TestMailQueueSendNeverBlocksWhenFull: Send is the request path, so it
+// may not block or do I/O even when the queue is full — not even to log
+// the drop (Astra on oficina/slides #20, round 2, P1: a "queue full" log
+// line on a stalled sink held the request, and saturation is
+// admission-dependent). The worker is stuck on its first link and the
+// log sink is stuck too; twice the queue's depth of Sends must still
+// return at once, and the drops are logged by the worker afterwards.
+func TestMailQueueSendNeverBlocksWhenFull(t *testing.T) {
+ release := make(chan struct{})
+ var once sync.Once
+ free := func() { once.Do(func() { close(release) }) }
+ stuck := funcSender(func(ctx context.Context, _ string) error {
+ select {
+ case <-release:
+ case <-ctx.Done():
+ }
+ return nil
+ })
+ var mu sync.Mutex
+ var msgs []string
+ q := newMailQueue(stuck, everyone, nil, slog.New(stuckHandler{release, &mu, &msgs}))
+ t.Cleanup(func() { free(); q.close() })
+
+ done := make(chan struct{})
+ go func() {
+ for i := 0; i < 2*mailQueueDepth; i++ {
+ _ = q.Send(context.Background(), fmt.Sprintf("p%d@example.test", i), "s", "b")
+ }
+ close(done)
+ }()
+ select {
+ case <-done:
+ case <-time.After(2 * time.Second):
+ free()
+ <-done
+ t.Fatal("Send blocked with the queue full: the request path waited on the queue or the log")
+ }
+ // The drops are the worker's to log, once it is free to.
+ free()
+ q.close()
+ mu.Lock()
+ defer mu.Unlock()
+ for _, m := range msgs {
+ if strings.Contains(m, "links dropped") {
+ return
+ }
+ }
+ t.Fatalf("no drop was logged with twice the queue's depth sent; the log has %q", msgs)
+}
+
+// TestMailQueueQueuesEveryAddress: the queue's fill level must not
+// depend on admission, so Send queues a refused address's link exactly
+// as it queues a permitted one; only the worker asks.
+func TestMailQueueQueuesEveryAddress(t *testing.T) {
+ release := make(chan struct{})
+ stuck := funcSender(func(ctx context.Context, _ string) error {
+ select {
+ case <-release:
+ case <-ctx.Done():
+ }
+ return nil
+ })
+ var asked sync.Map
+ admits := func(to string) bool { asked.Store(to, true); return to == "first@example.test" }
+ q := newMailQueue(stuck, admits, nil, slog.New(slog.DiscardHandler))
+ t.Cleanup(func() { close(release); q.close() })
+ _ = q.Send(context.Background(), "first@example.test", "s", "b")
+ deadline := time.Now().Add(2 * time.Second)
+ for _, ok := asked.Load("first@example.test"); !ok && time.Now().Before(deadline); _, ok = asked.Load("first@example.test") {
+ time.Sleep(5 * time.Millisecond)
+ }
+ for i := 0; i < 5; i++ {
+ _ = q.Send(context.Background(), fmt.Sprintf("refused%d@example.test", i), "s", "b")
+ }
+ if got := len(q.jobs); got != 5 {
+ t.Fatalf("queued %d refused links, want all 5: fill level must not depend on admission", got)
+ }
+}
+
+// TestMailQueueSurvivesAPanic: a panic in the mailer is that message's
+// failure; the worker recovers, logs, and sends the next one (Astra,
+// round 2, P2).
+func TestMailQueueSurvivesAPanic(t *testing.T) {
+ var mu sync.Mutex
+ var sent []string
+ calls := 0
+ s := funcSender(func(_ context.Context, to string) error {
+ mu.Lock()
+ defer mu.Unlock()
+ calls++
+ if calls == 1 {
+ panic("mailer exploded")
+ }
+ sent = append(sent, to)
+ return nil
+ })
+ q := newMailQueue(s, everyone, nil, slog.New(slog.DiscardHandler))
+ t.Cleanup(q.close)
+ _ = q.Send(context.Background(), "first@example.test", "s", "b")
+ _ = q.Send(context.Background(), "second@example.test", "s", "b")
+ q.wait()
+ mu.Lock()
+ defer mu.Unlock()
+ if len(sent) != 1 || sent[0] != "second@example.test" {
+ t.Fatalf("sent = %v, want the second link after the first panicked", sent)
+ }
+}
+
+// TestMailQueueCloseIsBoundedAndStopsTheWorker: close drains within its
+// deadline, then cancels the send in flight, abandons the rest, and the
+// worker is gone — no goroutine outlives close (Astra, round 2, P2).
+func TestMailQueueCloseIsBoundedAndStopsTheWorker(t *testing.T) {
+ baseline := runtime.NumGoroutine()
+ honours := funcSender(func(ctx context.Context, _ string) error {
+ <-ctx.Done() // a relay that never answers, but obeys cancellation
+ return ctx.Err()
+ })
+ q := newMailQueue(honours, everyone, nil, slog.New(slog.DiscardHandler))
+ q.drainTimeout = 50 * time.Millisecond
+ for i := 0; i < 3; i++ {
+ _ = q.Send(context.Background(), fmt.Sprintf("p%d@example.test", i), "s", "b")
+ }
+ start := time.Now()
+ q.close()
+ if took := time.Since(start); took > 2*time.Second {
+ t.Fatalf("close took %v, want about its 50ms deadline", took)
+ }
+ select {
+ case <-q.done:
+ default:
+ t.Fatal("the worker was still running after close")
+ }
+ deadline := time.Now().Add(time.Second)
+ for runtime.NumGoroutine() > baseline && time.Now().Before(deadline) {
+ time.Sleep(5 * time.Millisecond)
+ }
+ if n := runtime.NumGoroutine(); n > baseline {
+ t.Fatalf("%d goroutines after close, %d before: the queue leaked", n, baseline)
+ }
+}
diff --git a/internal/docs/signin_timing_test.go b/internal/docs/signin_timing_test.go
new file mode 100644
index 0000000..bf2d2be
--- /dev/null
+++ b/internal/docs/signin_timing_test.go
@@ -0,0 +1,105 @@
+package docs
+
+import (
+ "context"
+ "net/http"
+ "net/http/httptest"
+ "net/url"
+ "strings"
+ "sync"
+ "testing"
+ "time"
+)
+
+// blockingMailer holds every Send until release is closed — an SMTP
+// relay that takes as long as the test likes.
+type blockingMailer struct {
+ release chan struct{}
+ mu sync.Mutex
+ to []string
+}
+
+func (m *blockingMailer) Send(_ context.Context, to, _, _ string) error {
+ <-m.release
+ m.mu.Lock()
+ m.to = append(m.to, to)
+ m.mu.Unlock()
+ return nil
+}
+
+func (m *blockingMailer) sent() []string {
+ m.mu.Lock()
+ defer m.mu.Unlock()
+ return append([]string(nil), m.to...)
+}
+
+// TestSigninNeverWaitsForTheMailer: when the send ran inside the
+// request (admissionMailer), a permitted address waited for SMTP before
+// its ?sent=1 and a refused one did not — Astra measured 252 ms against
+// 0.35 ms on Slides, which had the same shape — so the allowlist was
+// readable off a stopwatch. With the mailer blocked, every POST —
+// permitted, refused, and both with force=1 — must answer, and the
+// permitted links must then go out.
+func TestSigninNeverWaitsForTheMailer(t *testing.T) {
+ bm := &blockingMailer{release: make(chan struct{})}
+ app, err := NewForTestWith(t, Config{AllowedAddresses: "member@example.test", Mailer: bm})
+ if err != nil {
+ t.Fatal(err)
+ }
+ var once sync.Once
+ free := func() { once.Do(func() { close(bm.release) }) }
+ t.Cleanup(free) // before the app's Close, which drains the queue
+
+ for _, form := range []url.Values{
+ {"address": {"member@example.test"}},
+ {"address": {"outsider@example.test"}},
+ {"address": {"member@example.test"}, "force": {"1"}},
+ {"address": {"outsider@example.test"}, "force": {"1"}},
+ } {
+ done := make(chan *httptest.ResponseRecorder, 1)
+ go func() {
+ req := httptest.NewRequest(http.MethodPost, "/signin", strings.NewReader(form.Encode()))
+ req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
+ req.Header.Set("Sec-Fetch-Site", "same-origin")
+ rec := httptest.NewRecorder()
+ app.Handler().ServeHTTP(rec, req)
+ done <- rec
+ }()
+ select {
+ case rec := <-done:
+ if rec.Code != http.StatusSeeOther || !strings.Contains(rec.Header().Get("Location"), "sent=1") {
+ t.Errorf("POST %v: %d %q, want 303 ?sent=1", form, rec.Code, rec.Header().Get("Location"))
+ }
+ case <-time.After(2 * time.Second):
+ t.Errorf("POST %v waited on the mailer: the response time says the address is permitted", form)
+ free()
+ <-done
+ }
+ }
+
+ free()
+ deadline := time.Now().Add(5 * time.Second)
+ for len(bm.sent()) < 2 && time.Now().Before(deadline) {
+ time.Sleep(10 * time.Millisecond)
+ }
+ time.Sleep(50 * time.Millisecond)
+ if got := bm.sent(); len(got) != 2 || got[0] != "member@example.test" || got[1] != "member@example.test" {
+ t.Fatalf("mail sent = %v, want two links, both to member@example.test", got)
+ }
+}
+
+// TestAppCloseStopsTheMailWorker: the app owns its queue, and Close
+// stops its worker.
+func TestAppCloseStopsTheMailWorker(t *testing.T) {
+ app, err := NewForTest(t)
+ if err != nil {
+ t.Fatal(err)
+ }
+ q := app.signinMail
+ _ = app.Close()
+ select {
+ case <-q.done:
+ case <-time.After(2 * time.Second):
+ t.Fatal("the sign-in mail worker was still running after App.Close")
+ }
+}
diff --git a/internal/docs/testing.go b/internal/docs/testing.go
index 61104db..704e04c 100644
--- a/internal/docs/testing.go
+++ b/internal/docs/testing.go
@@ -118,6 +118,7 @@ func (a *App) TestSignIn(t *testing.T, address string) (string, error) {
return "", fmt.Errorf("docs: TestSignIn: POST /signin redirected to %q, want a %q outcome", loc, "?sent=1")
}
+ a.signinMail.wait() // the link is sent after the response (mailqueue.go)
a.mailRecorder.mu.Lock()
to, body, after := a.mailRecorder.lastTo, a.mailRecorder.lastBody, a.mailRecorder.sends
a.mailRecorder.mu.Unlock()