Skip to content

Update test environment to fix integration tests with nginx 1.30#305

Merged
clue merged 1 commit into
clue:mainfrom
clue-labs:nginx-tests
Jun 14, 2026
Merged

Update test environment to fix integration tests with nginx 1.30#305
clue merged 1 commit into
clue:mainfrom
clue-labs:nginx-tests

Conversation

@clue

@clue clue commented Jun 14, 2026

Copy link
Copy Markdown
Owner

This changeset updates the integration tests for two HTTP edge-case behaviors introduced when the nginx:stable-alpine image rolled forward to nginx 1.30. Both are expected interactions with how nginx now proxies to upstream and handles CONNECT, not changes in Framework X behavior, and the tests cover them through the suite's existing per-server skip mechanism, the same way it already handles other server-specific differences.

The 1.30 stable line picks up two changes from the nginx 1.29.x mainline. nginx 1.29.7 made HTTP/1.1 with keep-alive to upstream servers the default (nginx/nginx#1080, previously HTTP/1.0), so a Host-less HTTP/1.0 request now reaches the backend as HTTP/1.1, where a Host header is required. nginx 1.29.3 reworked CONNECT handling (nginx/nginx#935), so it now rejects proxied CONNECT requests with 405 Not Allowed rather than 400 Bad Request. Framework X handles both correctly, and a new assertion covers the HTTP/1.1 Host requirement explicitly.

Builds on top of #3, #46 and others

@clue clue added this to the v0.18.0 milestone Jun 14, 2026
@clue clue requested a review from Copilot June 14, 2026 20:00

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adjusts the integration test suite to account for behavior changes observed when running Framework X behind newer nginx:stable-alpine (nginx 1.30), particularly around Host-less requests reaching upstream and proxied CONNECT handling.

Changes:

  • Added an explicit assertion that Host-less requests should be rejected (400) (with a skip for the PHP development server behavior).
  • Updated existing Host/UA/Accept header test with a new skip to tolerate nginx 1.29.7+ upstream behavior changes.
  • Updated proxy CONNECT rejection test to skip nginx 1.30+ returning 405 instead of 400, plus a minor comment wording tweak.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/integration.bash Outdated
Comment thread tests/integration.bash
@clue clue merged commit 92c5907 into clue:main Jun 14, 2026
75 checks passed
@clue clue deleted the nginx-tests branch June 14, 2026 22:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants