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

'consecutive' negotiation algorithm (Part 1) #850

Merged
merged 9 commits into from
May 18, 2023
Merged

Conversation

Byron
Copy link
Owner

@Byron Byron commented May 11, 2023

Implement the consecutive negotiation algorithm to be more compatible to other kinds of servers which
cannot deal with the naive negotiation style we currently implement.

Tasks

  • a way to read fetch.negotiationAlgorithm and use it
  • a simple commit-graph implementation to associate data with commits.
  • tests that include the commit-graph for acceleration.

Byron added 8 commits May 17, 2023 15:22
 - name tests correctly
For that, we remove duplicate import paths for types.
We also improve lifetimes around parent iteration, and make the type explicit.
…ith them.

This data structure should be used whenever stateful traversal is required, usually
by associating information with each commit to remember what was seen and what wasn't.
With it it can leverage the commitgraph data structure would would be more prominent
on server-side applications, presumably.
@Byron Byron merged commit 4507f94 into main May 18, 2023
16 checks passed
@Byron Byron changed the title 'consecutive' negotiation algorithm 'consecutive' negotiation algorithm (Part 1) May 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Assertion failed when fetching from gitweb: "Naive always finishes after the first round"
1 participant