-
Notifications
You must be signed in to change notification settings - Fork 6
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
Support clients that don't enable side-band or side-band-64k #41
Merged
Commits on Apr 6, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4cc80f2 - Browse repository at this point
Copy the full SHA 4cc80f2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e788b5 - Browse repository at this point
Copy the full SHA 9e788b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d157b5 - Browse repository at this point
Copy the full SHA 3d157b5View commit details -
Add a test that demonstrates a protocol error
When the client doesn't request sideband information, the report should be sent directly, not in a sideband message, and there should be no other sideband messages (i.e. from index-pack).
Configuration menu - View commit details
-
Copy full SHA for eaf8daf - Browse repository at this point
Copy the full SHA eaf8dafView commit details -
Configuration menu - View commit details
-
Copy full SHA for eff59d6 - Browse repository at this point
Copy the full SHA eff59d6View commit details -
When sideband is off, send the report directly
Most git clients enable the side-band or side-band-64k capability. When they do this, the report ("unpack ok" and per-ref status) will be sent nested in a sideband 1 packet. However, git clients aren't required to do this, and when they don't the report is supposed to be written without getting nested. So that's what this change does.
Configuration menu - View commit details
-
Copy full SHA for 1488c82 - Browse repository at this point
Copy the full SHA 1488c82View commit details -
The empty pack is the same for all of these tests, so we can generate it once, store it in the repo, and avoid the complexity of shelling out to git during the tests. Here's how I generated the file: $ git pack-objects --revs --stdout > internal/integration/testdata/empty.pack </dev/null Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
Configuration menu - View commit details
-
Copy full SHA for 2e77fa7 - Browse repository at this point
Copy the full SHA 2e77fa7View commit details -
Don't fail is there was some data
When reading the output from spokes-receive-pack, sometimes we get "file already closed" instead of EOF at the end of the output. In that case, when there is some data, just log the error and proceed to parsing the data. This is an attempt to fix or at least learn more about errors like the one in https://github.com/github/spokes-receive-pack/actions/runs/4629813916/jobs/8190557968.
Configuration menu - View commit details
-
Copy full SHA for 1c65fc2 - Browse repository at this point
Copy the full SHA 1c65fc2View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.