• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

elixir-mint / mint
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: next_body_chunk
DEFAULT BRANCH: main
Repo Added 11 Jun 2022 07:10AM UTC
Token xUOJjt5H7KcTvx6ikZQ7qWuMslrGKsjIE regen
Build 261 Last
Files 20
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH ericmj/http2-larger-default-windows
branch: ericmj/http2-larger-default-windows
CHANGE BRANCH
x
Reset
Sync Branches
  • ericmj/http2-larger-default-windows
  • al/1.18
  • al/ci
  • al/client-settings
  • al/deps
  • al/elixir-1.10
  • al/elixir-1.11+
  • al/fix-leak
  • al/fix-tests
  • al/http2-logs
  • al/improve-defguard
  • al/modernize-ci
  • al/stream-docs
  • al/update-ci-versions
  • al/updates
  • allow-not-validating-target
  • allow_302_for_twitter_integration_test
  • andrea/code-coverage
  • andrea/dialyzer
  • andrea/fix-guard
  • andrea/new-ci-versions
  • comp-time-optimization
  • configurable-test-ports
  • connection-docs-ref
  • contributing-and-testing-housekeeping
  • docs-for-open
  • dont-close-socket-on-recv-timeout
  • ericmj/deprecate-read-write
  • ericmj/fix-1xx-informational-response
  • ericmj/http2-connection-window-size
  • ericmj/inet4-option
  • ericmj/local-h2c-integration-tests
  • ericmj/support-elixir-1.12
  • ericmj/update-ubuntu
  • fix-cannot-build-docker-image-using-podman-compose
  • fix-dialyzer
  • fix-http1-tests-not-tagged-correctly
  • fix-incorrect-ci-badge
  • fix-warnings
  • fix/humize_error_code_custom_error
  • http1-reason-phrase
  • ip-address-match-fun
  • jv-default-store
  • jv-elixir-1-19
  • main
  • next_body_chunk
  • np/export-error-types
  • optimize-http/2-request-creation
  • patch-3
  • preserve_header_case
  • pvthuyen/add-support-for-cacerts-get
  • refs/heads/main
  • refs/pull/399/merge
  • refs/pull/407/merge
  • rewrite-contributing-and-testing-doc
  • run-ci-against-erlang-27.1
  • unnecessary-rst-stream-2
  • update-deps
  • use_local_http_bin_in_all_tests
  • whatyouhide/issue311
  • wm-decompression
  • wm-docker-compose
  • wm-recv-response
  • wrap-tunnel-errors

05 May 2026 02:43AM UTC coverage: 88.125% (+0.3%) from 87.808%
70b522ee80a69f3c44f899b6c807b89a3ad75b16-PR-481

Pull #481

github

ericmj
Track advertised receive window synchronously in initiate/5

Streams opened before the server's SETTINGS ACK arrived were reading
their initial receive window from `conn.client_settings`, which still
held library defaults at that point. If the user advertised a stream
window smaller than the default (e.g. `initial_window_size: 65_535`),
the stream struct tracked the 4 MB default locally while the server
respected the 65_535 we sent in SETTINGS. The client's remaining
window never dropped to the refill threshold, stream-level
WINDOW_UPDATE frames never fired, and the connection stalled once the
server exhausted its per-stream send window.

Mirror the advertised `client_settings_params` into
`conn.client_settings` during `initiate/5` — the sender already knows
what it committed to and doesn't need to wait for the ACK to act on
it. Add a regression test that opens a stream before the ACK round
trip and asserts the stream struct reflects the advertised value.

Also rename `receive_window` to `receive_window_remaining` so the
peak/remaining distinction is clear at the call site, and document
that `:receive_window_update_threshold` is shared between the
connection and per-stream windows (so windows at or below the
threshold refill on every DATA frame).
Pull Request #481: Raise default HTTP/2 receive windows and batch HTTP/2 receive-window refills

62 of 65 new or added lines in 1 file covered. (95.38%)

1358 of 1541 relevant lines covered (88.12%)

246.94 hits per line

Relevant lines Covered
Build:
Build:
1541 RELEVANT LINES 1358 COVERED LINES
246.94 HITS PER LINE
Source Files on ericmj/http2-larger-default-windows
  • Tree
  • List 20
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
70b522ee... ericmj/http2-larger-default-windows Track advertised receive window synchronously in initiate/5 Streams opened before the server's SETTINGS ACK arrived were reading their initial receive window from `conn.client_settings`, which still held library defaults at that point. If the use... Pull #481 05 May 2026 02:44AM UTC ericmj github
88.12
565ffc33... ericmj/http2-larger-default-windows Track advertised receive window synchronously in initiate/5 Streams opened before the server's SETTINGS ACK arrived were reading their initial receive window from `conn.client_settings`, which still held library defaults at that point. If the use... Pull #481 16 Apr 2026 05:28PM UTC ericmj github
88.01
5d8c622f... ericmj/http2-larger-default-windows Track advertised receive window synchronously in initiate/5 Streams opened before the server's SETTINGS ACK arrived were reading their initial receive window from `conn.client_settings`, which still held library defaults at that point. If the use... Pull #481 13 Apr 2026 09:17PM UTC ericmj github
88.14
See All Builds (193)

Badge your Repo: mint

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc