Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Autonat v2 transport changes #3

Merged
merged 112 commits into from
May 14, 2024

Commits on Oct 30, 2023

  1. Configuration menu
    Copy the full SHA
    6cc5d7c View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2023

  1. Configuration menu
    Copy the full SHA
    6d44a1e View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2023

  1. Configuration menu
    Copy the full SHA
    81cd442 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2023

  1. Intermediate commit

    umgefahren committed Nov 18, 2023
    Configuration menu
    Copy the full SHA
    c0fd889 View commit details
    Browse the repository at this point in the history
  2. Resolved conflict

    umgefahren committed Nov 18, 2023
    Configuration menu
    Copy the full SHA
    4ac520d View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2023

  1. WIP client

    umgefahren committed Nov 19, 2023
    Configuration menu
    Copy the full SHA
    fadf904 View commit details
    Browse the repository at this point in the history
  2. Run cargo fix

    umgefahren committed Nov 19, 2023
    Configuration menu
    Copy the full SHA
    60b4ccc View commit details
    Browse the repository at this point in the history

Commits on Nov 20, 2023

  1. Correct minor things

    umgefahren committed Nov 20, 2023
    Configuration menu
    Copy the full SHA
    71487fc View commit details
    Browse the repository at this point in the history
  2. Implement suggestions

    umgefahren committed Nov 20, 2023
    Configuration menu
    Copy the full SHA
    63b31e9 View commit details
    Browse the repository at this point in the history

Commits on Dec 1, 2023

  1. Merged master

    umgefahren committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    546d2b2 View commit details
    Browse the repository at this point in the history
  2. Remove gloabl only

    umgefahren committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    c16235f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3bc107e View commit details
    Browse the repository at this point in the history

Commits on Dec 6, 2023

  1. Configuration menu
    Copy the full SHA
    50fb5e4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d34782e View commit details
    Browse the repository at this point in the history
  3. Resolve merge conflict

    umgefahren committed Dec 6, 2023
    Configuration menu
    Copy the full SHA
    d1bd57d View commit details
    Browse the repository at this point in the history

Commits on Dec 12, 2023

  1. Configuration menu
    Copy the full SHA
    fee9de1 View commit details
    Browse the repository at this point in the history
  2. Tests are working

    umgefahren committed Dec 12, 2023
    Configuration menu
    Copy the full SHA
    faa694a View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2023

  1. Configuration menu
    Copy the full SHA
    b01bae5 View commit details
    Browse the repository at this point in the history

Commits on Dec 22, 2023

  1. Configuration menu
    Copy the full SHA
    6282cae View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dab99d2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da2a790 View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2023

  1. Configuration menu
    Copy the full SHA
    be35e80 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    101a325 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bf2662a View commit details
    Browse the repository at this point in the history
  4. Resolve conflict

    umgefahren committed Dec 27, 2023
    Configuration menu
    Copy the full SHA
    efdbe35 View commit details
    Browse the repository at this point in the history
  5. Port dns transport

    umgefahren committed Dec 27, 2023
    Configuration menu
    Copy the full SHA
    c7350f9 View commit details
    Browse the repository at this point in the history
  6. Port request response

    umgefahren committed Dec 27, 2023
    Configuration menu
    Copy the full SHA
    3079aa9 View commit details
    Browse the repository at this point in the history
  7. Port websocket

    umgefahren committed Dec 27, 2023
    Configuration menu
    Copy the full SHA
    596bb06 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    37cd309 View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2023

  1. Address more concerns

    umgefahren committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    9eea564 View commit details
    Browse the repository at this point in the history
  2. Move autonat down

    umgefahren committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    9a85209 View commit details
    Browse the repository at this point in the history
  3. Move autonatv2 to autonat

    umgefahren committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    4399bab View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2023

  1. Format code

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    663055e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ba232cb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    22b96b3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a19d7c8 View commit details
    Browse the repository at this point in the history
  5. Avoid diff in v1

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    46b8e84 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    037aa99 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    230ad08 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7cbf413 View commit details
    Browse the repository at this point in the history
  9. Rewrite pending nonce handling

    Through the use of let-else, we can early-exit on the unhappy-path.
    We also update the log message to remove the "cause" as there can
    be a multitude of reasons, why we received a nonce that we didn't
    expect, e.g. it could also be a bug in the client or the server
    implementation so we don't want to jump to conclusions here.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    16b4d7c View commit details
    Browse the repository at this point in the history
  10. A server might not support autonat on every connection

    Fix the event handling to only update the flag for the connection
    that the event originated from.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    fdc0c2d View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a78c265 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    8f6c27a View commit details
    Browse the repository at this point in the history
  13. Fix variable name

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    170270a View commit details
    Browse the repository at this point in the history
  14. Improve log message

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    589cf6c View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    feea82f View commit details
    Browse the repository at this point in the history
  16. Remove server field from InternalStatusUpdate

    Connections are always scoped to a particular peer and the PeerId
    is reported with every event sent from the handler to the behaviour.
    We don't need to include it in the event.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    8b0a544 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    86849e5 View commit details
    Browse the repository at this point in the history
  18. Remove set that we never write to

    This is now handled in the `AddressInfo` struct.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    372d88d View commit details
    Browse the repository at this point in the history
  19. Remove superflous tests

    We filter straight after this for the same conditions.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    a2fcadd View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    90d7d07 View commit details
    Browse the repository at this point in the history
  21. Rewrite generation of dial requests

    An AutoNAT server will always only dial a single address. Thus,
    we are more likely to get a quicker results for all our candidates
    if we send each candidate to a different server.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    2a6ad94 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    b2d147f View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    7e3da61 View commit details
    Browse the repository at this point in the history
  24. Inline DialBack struct

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    e2fe41d View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    1e1aeca View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    d5724c1 View commit details
    Browse the repository at this point in the history
  27. Remove handling of DialFailure

    We only ever insert into the `peer_info` map for established
    connections. We either establish a connection or receive a `DialFailure`.
    
    Thus, there will never be any state in `peer_info` for a failed
    connection so there is nothing to be cleaned up.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    de91c55 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    3719440 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    7b6d354 View commit details
    Browse the repository at this point in the history
  30. Add comment

    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    8ce2a01 View commit details
    Browse the repository at this point in the history
  31. Rewrite dial-request to always index by nonce

    The nonce of a probe is essentially like a primary key that is
    decided by the client. Thus, any event emitted by the handler
    should be indexed by the provided nonce.
    
    We can achieve this by using a `FuturesMap` instead of a `FuturesSet`.
    This gives us access to the nonce even in the case that the actual
    protocol times out.
    
    With the nonce in place, we had to re-model the event returned to
    the behaviour. Most importantly. we need to separate the different
    kinds of errors:
    
    - Complete execution of the protocol but address is not reachable
    - Protocol was aborted mid-way
    - Server does not support the protocol
    
    We can't really do anything if the protocols is aborted so we just
    represent this case with an `io::Error` that gets logged further up.
    
    As a result, this means we can remove the `Option` from the event
    emitted to the user and _always_ give them a `Multiaddr`.
    thomaseizinger committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    42ac03c View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    3181113 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    c51f8cc View commit details
    Browse the repository at this point in the history
  34. Merge pull request #2 from libp2p/autonatv2-thomas-followup

    Follow-up commits for AutoNATv2
    umgefahren authored Dec 30, 2023
    Configuration menu
    Copy the full SHA
    88b1092 View commit details
    Browse the repository at this point in the history
  35. Delay and use Result

    umgefahren committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    4d96c33 View commit details
    Browse the repository at this point in the history
  36. Perform sleep correct

    umgefahren committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    8a135ea View commit details
    Browse the repository at this point in the history
  37. Remove is_local

    umgefahren committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    fac1196 View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    9ed44d9 View commit details
    Browse the repository at this point in the history
  39. Fix deprecation

    umgefahren committed Dec 30, 2023
    Configuration menu
    Copy the full SHA
    a974707 View commit details
    Browse the repository at this point in the history

Commits on Jan 28, 2024

  1. Merge completed

    umgefahren committed Jan 28, 2024
    Configuration menu
    Copy the full SHA
    117075f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3f2476a View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2024

  1. Configuration menu
    Copy the full SHA
    9254faa View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2024

  1. Configuration menu
    Copy the full SHA
    54e4c1f View commit details
    Browse the repository at this point in the history
  2. Port quic

    umgefahren committed Feb 4, 2024
    Configuration menu
    Copy the full SHA
    d723c50 View commit details
    Browse the repository at this point in the history

Commits on Feb 5, 2024

  1. Make it compile

    umgefahren committed Feb 5, 2024
    Configuration menu
    Copy the full SHA
    daf2a0b View commit details
    Browse the repository at this point in the history
  2. Allow deprecated items

    umgefahren committed Feb 5, 2024
    Configuration menu
    Copy the full SHA
    6b85b82 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e6afb5a View commit details
    Browse the repository at this point in the history
  4. Make the tests run

    umgefahren committed Feb 5, 2024
    Configuration menu
    Copy the full SHA
    0b94a01 View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2024

  1. Configuration menu
    Copy the full SHA
    a09e26d View commit details
    Browse the repository at this point in the history
  2. Fix minor nits

    umgefahren committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    61ae32e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ad6ad8f View commit details
    Browse the repository at this point in the history
  4. Format

    umgefahren committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    fbdc85f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    553511c View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2024

  1. Update protocols/autonat/src/v2/client/behaviour.rs

    Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
    umgefahren and thomaseizinger authored Feb 19, 2024
    Configuration menu
    Copy the full SHA
    9bf52d4 View commit details
    Browse the repository at this point in the history
  2. Update protocols/autonat/src/v2/client/handler/dial_back.rs

    Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
    umgefahren and thomaseizinger authored Feb 19, 2024
    Configuration menu
    Copy the full SHA
    70f41f3 View commit details
    Browse the repository at this point in the history
  3. Update protocols/autonat/src/v2/client/handler/dial_back.rs

    Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
    umgefahren and thomaseizinger authored Feb 19, 2024
    Configuration menu
    Copy the full SHA
    0773694 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    89acd28 View commit details
    Browse the repository at this point in the history
  5. Avoid stream close

    umgefahren committed Feb 19, 2024
    Configuration menu
    Copy the full SHA
    d571e51 View commit details
    Browse the repository at this point in the history
  6. Better error handling

    umgefahren committed Feb 19, 2024
    Configuration menu
    Copy the full SHA
    10e4cee View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d4d671e View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2dc574e View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2024

  1. Correct minor things

    umgefahren committed Mar 6, 2024
    Configuration menu
    Copy the full SHA
    330fc51 View commit details
    Browse the repository at this point in the history
  2. Resolve merge conflict

    umgefahren committed Mar 6, 2024
    Configuration menu
    Copy the full SHA
    5f6f2f6 View commit details
    Browse the repository at this point in the history

Commits on Mar 7, 2024

  1. Configuration menu
    Copy the full SHA
    367273a View commit details
    Browse the repository at this point in the history
  2. Remove unused import

    umgefahren committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    d79bca3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8df0183 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5d24d03 View commit details
    Browse the repository at this point in the history
  5. Fix concerns by clippy

    umgefahren committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    41804be View commit details
    Browse the repository at this point in the history
  6. Format

    umgefahren committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    bd495f9 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    38be2b4 View commit details
    Browse the repository at this point in the history
  8. Correct webtransport test

    umgefahren committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    ce7596c View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    0506c7b View commit details
    Browse the repository at this point in the history
  10. Remove clippy nit

    umgefahren committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    0b6dbb1 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    d2fddd5 View commit details
    Browse the repository at this point in the history

Commits on Mar 8, 2024

  1. Configuration menu
    Copy the full SHA
    8f1fcbb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8095e84 View commit details
    Browse the repository at this point in the history

Commits on May 8, 2024

  1. Remove deprecated

    umgefahren committed May 8, 2024
    Configuration menu
    Copy the full SHA
    0918ea8 View commit details
    Browse the repository at this point in the history
  2. Merge from master

    umgefahren committed May 8, 2024
    Configuration menu
    Copy the full SHA
    b07a463 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0724086 View commit details
    Browse the repository at this point in the history
  4. Formatting

    umgefahren committed May 8, 2024
    Configuration menu
    Copy the full SHA
    45863c3 View commit details
    Browse the repository at this point in the history