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

feat: [MR-552] Implement callback expiration #1699

Open
wants to merge 44 commits into
base: master
Choose a base branch
from

Commits on Sep 7, 2024

  1. Configuration menu
    Copy the full SHA
    75461e9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9534ca4 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2024

  1. Define two separate CanisterInput variants of SysUnknown responses: D…

    …eadlineExpired and ResponseDropped.
    alin-at-dfinity committed Sep 8, 2024
    Configuration menu
    Copy the full SHA
    e65c087 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2024

  1. Configuration menu
    Copy the full SHA
    c70e701 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9fe3fa6 View commit details
    Browse the repository at this point in the history
  3. Make clippy happy.

    alin-at-dfinity committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    fa0e182 View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2024

  1. Configuration menu
    Copy the full SHA
    5c90ada View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e2a5852 View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2024

  1. Update queues_compatibility_test to use mainnet version. Describe cal…

    …lbacks_with_enqueued_response invariant in CanisterQueues doc comment.
    alin-at-dfinity committed Sep 12, 2024
    Configuration menu
    Copy the full SHA
    9b8bbf5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9d0e758 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    54f89c3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    679d618 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2024

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

Commits on Sep 16, 2024

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

Commits on Sep 20, 2024

  1. Have SystemState::pop_input() always succeed, by returning an arbitra…

    …ry reject response that will result in a critical eror anyway (and the response being dropped).
    alin-at-dfinity committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    d01c587 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dc80ea3 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2024

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

Commits on Sep 26, 2024

  1. refactor: [MR-603] Typed canister queues and references

    Assign type parameters to canister queues and references, to designate them as either input/inbound or output/outbound.
    
    Ensures that input queues can only hold inbound references; and output queues can only hold outbound references. Implements separate logic (for inbound and outbound references) for determining staleness, lookup and removal.
    alin-at-dfinity committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    2b6fb3a View commit details
    Browse the repository at this point in the history
  2. Make clippy happy.

    alin-at-dfinity committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    efa16a2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4ede3ff View commit details
    Browse the repository at this point in the history
  4. Address review comments: deduplicate queue_front_not_stale() out of…

    … the two specific `MessageStore<_>` implementations into `MessageStoreImpl`.
    alin-at-dfinity committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    0e7b71c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    e0388bb View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

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

Commits on Sep 28, 2024

  1. Fix doc comment.

    alin-at-dfinity committed Sep 28, 2024
    Configuration menu
    Copy the full SHA
    61a3f17 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    46b514a View commit details
    Browse the repository at this point in the history
  3. Make clippy happy.

    alin-at-dfinity committed Sep 28, 2024
    Configuration menu
    Copy the full SHA
    913a0af View commit details
    Browse the repository at this point in the history
  4. Remove the now unnecessary and potentially conflicting Context argume…

    …nt when decoding CanisterQueue from proto.
    alin-at-dfinity committed Sep 28, 2024
    Configuration menu
    Copy the full SHA
    2da5b3b View commit details
    Browse the repository at this point in the history
  5. Have MessageStore::get() return &RequestOrResponse for output queues …

    …(but still CanisterInput by value for input queues).
    alin-at-dfinity committed Sep 28, 2024
    Configuration menu
    Copy the full SHA
    e9f462b View commit details
    Browse the repository at this point in the history
  6. Clippy.

    alin-at-dfinity committed Sep 28, 2024
    Configuration menu
    Copy the full SHA
    9728778 View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. Rely on free functions instead of implementing from to convert from I…

    …d to InboundReference / OutboundReference, to make it clear that the functions may panic (even though the two types are essentially private to the module).
    alin-at-dfinity committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    94937cc View commit details
    Browse the repository at this point in the history
  2. Get rid of asserts about reference contexts altogether. Heve the queu…

    …e item types declare their own context (inbound vs outbound) and use that when constructing a new reference of the given type.
    alin-at-dfinity committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    0e185a2 View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2024

  1. feat: [MR-552] Implement callback expiration

    Generate compact reject responses upon best-effort callback expiration. And inflate them into SYS_UNKNOWN reject responses when peeking/popping.
    alin-at-dfinity committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    0a5a38e View commit details
    Browse the repository at this point in the history
  2. Make clippy extatic.

    alin-at-dfinity committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    a4de1e3 View commit details
    Browse the repository at this point in the history
  3. Minor cleanup.

    alin-at-dfinity committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    d141beb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d03ccd2 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    41d6b69 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a55c769 View commit details
    Browse the repository at this point in the history
  7. Address review comments: avoid also allocating a Vec in InboundMessag…

    …eStore::callbacks_with_enqueued_response(); fix typo; move inner function definition before use.
    alin-at-dfinity committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    f8e8ffc View commit details
    Browse the repository at this point in the history
  8. Address review comment: restructure a bit MessageStore<CanisterInput>…

    …::is_stale() for better readability. Make all asserts for the right context type into debug_asserts().
    alin-at-dfinity committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    f1d4040 View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2024

  1. Address review comments: implement Reference::.is_inbound_best_effort…

    …_response() and Reference::is_outbound_guaranteed_request() methods and use them to more concisely check for the respective message types.
    alin-at-dfinity committed Oct 2, 2024
    Configuration menu
    Copy the full SHA
    a8330fd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5a9dd15 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. Configuration menu
    Copy the full SHA
    4c46593 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fceea1b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c4fb4b5 View commit details
    Browse the repository at this point in the history