Mohammed Al Sahaf 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e039a5bb5c 
							
						 
					 
					
						
						
							
							chore: upgrade .golangci.yml and workflow to v2 ( #6924 )  
						
						... 
						
						
						
						* chore: upgrade .golangci.yml and workflow to v2
run `golangci-lint fmt`
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* run `golangci-lint run --fix`
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* more lint fixes
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* bring back comments to .golangci.yml
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* appease the linter some more
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* oops
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* use embedded structs
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* use embedded structs where they were used before
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* disable rule  `-QF1006`
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* missed a spot
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
---------
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com> 
						
						
					 
					
						2025-06-03 02:24:32 +03:00 
						 
				 
			
				
					
						
							
							
								Jesper Brix Rosenkilde 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							6c38ae7381 
							
						 
					 
					
						
						
							
							reverseproxy: Add valid Upstream to DialInfo in active health checks ( #6949 )  
						
						... 
						
						
						
						Currently if we extract the DialInfo from a Request Context during an active health check, then the Upstream in the DialInfo is nil.
This PR attempts to set the Upstream to a sensible value, based on wether or not the Upstream has been overriden in the active health check's config. 
						
						
					 
					
						2025-04-15 08:44:53 -06:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							220cd1c2bc 
							
						 
					 
					
						
						
							
							reverseproxy: more comments about buffering and add new tests ( #6778 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.24.1, ubuntu-latest, 0, 1.24, linux) (push) Failing after 1m49s 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been skipped 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, aix) (push) Successful in 1m42s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, darwin) (push) Successful in 1m42s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, dragonfly) (push) Successful in 1m38s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, freebsd) (push) Successful in 1m22s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, illumos) (push) Successful in 1m19s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, linux) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, netbsd) (push) Successful in 1m28s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, openbsd) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, solaris) (push) Successful in 1m19s 
				
			 
		
			
				
	Cross-Build / build (~1.24.1, 1.24, windows) (push) Successful in 1m23s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Successful in 2m2s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 1m23s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.24.1, macos-14, 0, 1.24, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.24.1, windows-latest, True, 1.24, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						Co-authored-by: Matt Holt <mholt@users.noreply.github.com> 
						
						
					 
					
						2025-03-07 11:22:43 -07:00 
						 
				 
			
				
					
						
							
							
								Mohammed Al Sahaf 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							904a0fa368 
							
						 
					 
					
						
						
							
							reverse_proxy: re-add healthy upstreams metric ( #6806 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been skipped 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m39s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m36s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m28s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m21s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m23s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m46s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m35s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 1m14s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 1m15s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m21s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 1m14s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m20s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m16s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m31s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m30s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Successful in 2m3s 
				
			 
		
			
				
	Lint / govulncheck (push) Failing after 1m17s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						* reverse_proxy: re-add healthy upstreams metric
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
* lint
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
---------
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com> 
						
						
					 
					
						2025-01-27 14:30:54 -07:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e7da3b267b 
							
						 
					 
					
						
						
							
							reverseproxy: Via header ( #6275 )  
						
						
						
						
					 
					
						2025-01-17 06:49:01 -07:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1bd567d7ad 
							
						 
					 
					
						
						
							
							reverseproxy: buffer requests for fastcgi by default ( #6759 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been cancelled 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / govulncheck (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						* buffer requests for fastcgi by default
* fix import cycle
* fix the return value of bufferedBody
* more comments about fastcgi buffering
---------
Co-authored-by: Matt Holt <mholt@users.noreply.github.com> 
						
						
					 
					
						2025-01-02 11:18:25 -07:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c864b82ae1 
							
						 
					 
					
						
						
							
							reverseproxy: Set Content-Length when body is fully buffered ( #6638 )  
						
						
						
						
					 
					
						2024-12-17 23:36:13 +00:00 
						 
				 
			
				
					
						
							
							
								bt90 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							328fb614f0 
							
						 
					 
					
						
						
							
							reverseproxy: Only handle websocket protocol ( #6740 )  
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Waiting to run 
				
			 
		
			
				
	Tests / goreleaser-check (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Waiting to run 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Waiting to run 
				
			 
		
			
				
	Lint / govulncheck (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						
					 
					
						2024-12-11 11:17:05 -07:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9c0c71e577 
							
						 
					 
					
						
						
							
							reverseproxy: Rewrite requests and responses for websocket over http2 ( #6567 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 1m49s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Failing after 2m56s 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been skipped 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m35s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m27s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m27s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m29s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m23s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 2m30s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 2m45s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 2m2s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 2m42s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 2m12s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m19s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m51s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m21s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m17s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m17s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Successful in 3m18s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 1m33s 
				
			 
		
		
	 
 
	 
						
						* reverse proxy: rewrite requests and responses for websocket over http2
* delete protocol pseudo-header
* modify cloned requests
* set request variable to track if it's a h2 websocket
* use request bodu
* rewrite request body
* use WebSocket instead of Websocket in the headers
* use logger check for zap loggers
* fix lint 
						
						
					 
					
						2024-12-06 13:23:27 -07:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							315715e90f 
							
						 
					 
					
						
						
							
							core: Implement FastAbs to avoid repeated os.Getwd calls ( #6687 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been skipped 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m28s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m23s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m23s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 2m13s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m17s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 1m15s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m16s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 1m18s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m17s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m17s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m15s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m15s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m16s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Successful in 1m53s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 1m44s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						* core: Implement FastAbs to avoid repeated os.Getwd calls
* Lint
* Rename files 
						
						
					 
					
						2024-11-13 03:55:51 -05:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							238f1108e6 
							
						 
					 
					
						
						
							
							reverseproxy: Revert  #4952  - don't ignore context cancellation in stream mode  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 1m32s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Failing after 2m31s 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been skipped 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m27s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m29s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m31s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m55s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m41s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m44s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m48s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m36s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 3m14s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m53s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 1m56s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m51s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 1m59s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m53s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m51s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m48s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m54s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m55s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Failing after 1m52s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 2m44s 
				
			 
		
		
	 
 
	 
						
						i.e. Revert commit f5dce84a7028d1b116db7fead27ff8b2506baf78
Two years ago, the patch in #4952  was a seemingly necessary way to fix an issue (sort of an edge case), but it broke other more common use cases (see #6666 ).
Now, as of #6669 , it seems like the original issue can no longer be replicated, so we are reverting that patch, because it was incorrect anyway.
If it turns out the original issue returns, a more proper patch may be in #6669  (even if used as a baseline for a future fix). A potential future fix could be an opt-in setting. 
						
						
					 
					
						2024-11-12 13:43:34 -07:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							09b2cbcf4d 
							
						 
					 
					
						
						
							
							caddyhttp: Add MatchWithError to replace SetVar hack ( #6596 )  
						
						... 
						
						
						
						* caddyhttp: Add `MatchWithError` to replace SetVar hack
* Error in IP matchers on TLS handshake not complete
* Use MatchWithError everywhere possible
* Move implementations to MatchWithError versions
* Looser interface checking to allow fallback
* CEL factories can return RequestMatcherWithError
* Clarifying comment since it's subtle that an err is returned
* Return 425 Too Early status in IP matchers
* Keep AnyMatch signature the same for now
* Apparently Deprecated can't be all-uppercase to get IDE linting
* Linter 
						
						
					 
					
						2024-11-04 23:18:50 +00:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fbf0f4c425 
							
						 
					 
					
						
						
							
							reverseproxy: Sync changes from stdlib for 1xx handling ( #6656 )  
						
						... 
						
						
						
						* reverseproxy: Sync changes from stdlib for 1xx handling
Sourced from 960654be0c3bc28402fa 
						
						
					 
					
						2024-10-22 12:10:46 -06:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							48ce47f1d4 
							
						 
					 
					
						
						
							
							reverseproxy: Use correct cases for websocket related headers ( #6621 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Successful in 2m55s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 1m31s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Successful in 1m37s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 1m32s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Successful in 1m38s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 1m33s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Successful in 1m21s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Successful in 1m24s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Successful in 1m23s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 1m25s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 1m26s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Successful in 1m26s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Successful in 2m6s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 1m16s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2024-10-11 09:02:23 +00:00 
						 
				 
			
				
					
						
							
							
								Kévin Dunglas 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f4bf4e0097 
							
						 
					 
					
						
						
							
							perf: use zap's Check() to prevent useless allocs ( #6560 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Successful in 40s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Successful in 2m55s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Successful in 3m1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Successful in 3m1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Successful in 3m1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Successful in 3m1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Failing after 13m23s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Successful in 2m40s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Failing after 11m51s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Failing after 11m47s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Successful in 2m29s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Successful in 2m39s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Failing after 13m27s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Failing after 13m27s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Successful in 2m41s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Successful in 2m54s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Successful in 2m40s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Failing after 14m19s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Failing after 14m10s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Failing after 14m2s 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Failing after 11m58s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Failing after 3m44s 
				
			 
		
			
				
	Lint / govulncheck (push) Successful in 2m18s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						* perf: use zap's Check() to prevent useless allocs
* fix
* fix
* fix
* fix
* restore previous replacer behavior
* fix linter 
						
						
					 
					
						2024-09-13 11:16:37 -06:00 
						 
				 
			
				
					
						
							
							
								Steffen Busch 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c050a37e1c 
							
						 
					 
					
						
						
							
							reverse_proxy: add placeholder http.reverse_proxy.retries ( #6553 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, macos-14, 0, 1.23, mac) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.23.0, ubuntu-latest, 0, 1.23, linux) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.23.0, windows-latest, True, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been cancelled 
				
			 
		
			
				
	Tests / goreleaser-check (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, aix) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, darwin) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, dragonfly) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, freebsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, illumos) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, linux) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, netbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, openbsd) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, solaris) (push) Has been cancelled 
				
			 
		
			
				
	Cross-Build / build (~1.23.0, 1.23, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Has been cancelled 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Has been cancelled 
				
			 
		
			
				
	Lint / govulncheck (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						* Add placeholder http.reverse_proxy.lb.retries
* Renamed placeholder to http.reverse_proxy.retries 
						
						
					 
					
						2024-08-30 11:53:56 -06:00 
						 
				 
			
				
					
						
							
							
								Jens-Uwe Mager 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2bb2ecc549 
							
						 
					 
					
						
						
							
							reverseproxy: Change errors writing the response to warning. ( #6532 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.21.0, macos-14, 0, 1.21, mac) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, macos-14, 0, 1.22, mac) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.21.0, windows-latest, True, 1.21, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy.exe, ~1.22.3, windows-latest, True, 1.22, windows) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (macos-14, mac) (push) Waiting to run 
				
			 
		
			
				
	Lint / lint (windows-latest, windows) (push) Waiting to run 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.21.0, ubuntu-latest, 0, 1.21, linux) (push) Failing after 3s 
				
			 
		
			
				
	Tests / test (./cmd/caddy/caddy, ~1.22.3, ubuntu-latest, 0, 1.22, linux) (push) Failing after 2s 
				
			 
		
			
				
	Tests / test (s390x on IBM Z) (push) Has been skipped 
				
			 
		
			
				
	Tests / goreleaser-check (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, aix) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, darwin) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, dragonfly) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, freebsd) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, illumos) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, linux) (push) Failing after 1s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, netbsd) (push) Failing after 2s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, openbsd) (push) Failing after 2s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, solaris) (push) Failing after 2s 
				
			 
		
			
				
	Cross-Build / build (~1.22.3, 1.22, windows) (push) Failing after 2s 
				
			 
		
			
				
	Lint / lint (ubuntu-latest, linux) (push) Failing after 2s 
				
			 
		
			
				
	Lint / govulncheck (push) Failing after 2s 
				
			 
		
		
	 
 
	 
						
						Most of the errors that can be seen here are write errors due to clients
aborting the request from their side. Often seen ones include:
	* writing: ... write: broken pipe
	* writing: ... connection timed out
	* writing: http2: stream closed
	* writing: timeout...
	* writing: h3 error...
Most of these errors are beyond of the control of caddy on the client side,
probably nothing can be done on the server side. It still warrants
researching when these errors occur very often, so a change in level from
error to warn is better here to not polute the logs with errors in the
normal case. 
						
						
					 
					
						2024-08-21 11:39:20 -06:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c3fb5f4d3f 
							
						 
					 
					
						
						
							
							caddyhttp: Reject 0-RTT early data in IP matchers and set Early-Data header when proxying ( #6427 )  
						
						... 
						
						
						
						* caddyhttp: Reject 0-RTT early data in IP matchers and set Early-Data header when proxying
See RFC 8470: https://httpwg.org/specs/rfc8470.html 
Thanks to Michael Wedl (@MWedl)  at the University of Applied Sciences St. Poelten for reporting this.
* Don't return value for {remote} placeholder in early data
* Add Caddyfile support 
						
						
					 
					
						2024-07-05 10:46:20 -06:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9f97df2275 
							
						 
					 
					
						
						
							
							reverseproxy: Remove long-deprecated buffering properties  
						
						... 
						
						
						
						They've been deprecated for over a year and we printed warnings during that time. 
						
						
					 
					
						2024-04-22 15:34:14 -06:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d93e027e01 
							
						 
					 
					
						
						
							
							reverseproxy: Reuse buffered request body even if partially drained  
						
						... 
						
						
						
						Previous commit only works when the backends don't read any of the body first. 
						
						
					 
					
						2024-04-22 15:22:50 -06:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
						
						
							
						
						
							613d544a47 
							
						 
					 
					
						
						
							
							reverseproxy: Accept EOF when buffering  
						
						... 
						
						
						
						Before this change, a read of size (let's say) < 10, into a buffer of size 10, will return EOF because we're using CopyN to limit to the size of the buffer. That resulted in the body being read from later, which should only happen if it couldn't fit in the buffer.
With this change, the body is properly NOT set when it can all fit in the buffer. 
						
						
					 
					
						2024-04-22 13:12:10 -06:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b40cacf5ce 
							
						 
					 
					
						
						
							
							reverseproxy: Wait for both ends of websocket to close ( #6175 )  
						
						
						
						
					 
					
						2024-04-15 11:37:37 -06:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							53f7035299 
							
						 
					 
					
						
						
							
							reverseproxy: use context.WithoutCancel ( #6116 )  
						
						
						
						
					 
					
						2024-02-19 20:25:02 -07:00 
						 
				 
			
				
					
						
							
							
								Yolan Romailler 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2fe69a828f 
							
						 
					 
					
						
						
							
							chore: enabling a few more linters ( #5961 )  
						
						... 
						
						
						
						Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2024-01-25 15:24:58 +00:00 
						 
				 
			
				
					
						
							
							
								Fred Cox 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d9ff7b1872 
							
						 
					 
					
						
						
							
							reverseproxy: Only change Content-Length when full request is buffered ( #5830 )  
						
						... 
						
						
						
						fixes: https://github.com/caddyserver/caddy/issues/5829 
Signed-off-by: Fred Cox <mcfedr@gmail.com> 
						
						
					 
					
						2024-01-09 12:59:30 -07:00 
						 
				 
			
				
					
						
							
							
								WeidiDeng 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4de2c1c65e 
							
						 
					 
					
						
						
							
							panic when reading from backend failed to propagate stream error ( #5952 )  
						
						
						
						
					 
					
						2023-11-23 03:18:18 -05:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3a3182fba3 
							
						 
					 
					
						
						
							
							reverseproxy: Add more debug logs ( #5793 )  
						
						... 
						
						
						
						* reverseproxy: Add more debug logs
This makes debug logging very noisy when reverse proxying, but I guess
that's the point.
This has shown to be useful in troubleshooting infrastructure issues.
* Update modules/caddyhttp/reverseproxy/streaming.go
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* Update modules/caddyhttp/reverseproxy/streaming.go
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* Add opt-in `trace_logs` option
* Rename to VerboseLogs
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2023-10-11 13:36:20 -06:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2a6859a5e4 
							
						 
					 
					
						
						
							
							reverseproxy: Fix retries on "upstreams unavailable" error ( #5841 )  
						
						
						
						
					 
					
						2023-10-10 22:07:20 +00:00 
						 
				 
			
				
					
						
							
							
								Patrick Koenig 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4feac4d83c 
							
						 
					 
					
						
						
							
							reverseproxy: Allow fallthrough for response handlers without routes ( #5780 )  
						
						
						
						
					 
					
						2023-10-05 23:15:26 -04:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							936ee918ee 
							
						 
					 
					
						
						
							
							reverseproxy: Always return new upstreams ( fix   #5736 ) ( #5752 )  
						
						... 
						
						
						
						* reverseproxy: Always return new upstreams (fix  #5736 )
* Fix healthcheck logger race 
						
						
					 
					
						2023-08-17 11:33:40 -06:00 
						 
				 
			
				
					
						
							
							
								Jacob Gadikian 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d6f86cccf5 
							
						 
					 
					
						
						
							
							ci: use gci linter ( #5708 )  
						
						... 
						
						
						
						* use gofmput to format code
* use gci to format imports
* reconfigure gci
* linter autofixes
* rearrange imports a little
* export GOOS=windows golangci-lint run ./... --fix 
						
						
					 
					
						2023-08-14 09:41:15 -06:00 
						 
				 
			
				
					
						
							
							
								Jacob Gadikian 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b32f265eca 
							
						 
					 
					
						
						
							
							ci: Use gofumpt to format code ( #5707 )  
						
						
						
						
					 
					
						2023-08-07 19:40:31 +00:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cd486c25d1 
							
						 
					 
					
						
						
							
							caddyhttp: Make use of http.ResponseController ( #5654 )  
						
						... 
						
						
						
						* caddyhttp: Make use of http.ResponseController
Also syncs the reverseproxy implementation with stdlib's which now uses ResponseController as well 2449bbb5e6 
						
						
					 
					
						2023-08-02 20:03:26 +00:00 
						 
				 
			
				
					
						
							
							
								mmm444 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							da23501457 
							
						 
					 
					
						
						
							
							reverseproxy: Connection termination cleanup ( #5663 )  
						
						
						
						
					 
					
						2023-08-01 14:01:12 +00:00 
						 
				 
			
				
					
						
							
							
								Marten Seemann 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f45a6de20d 
							
						 
					 
					
						
						
							
							go.mod: Update quic-go to v0.37.0, bump to Go 1.20 minimum ( #5644 )  
						
						... 
						
						
						
						* update quic-go to v0.37.0
* Bump to Go 1.20
* Bump golangci-lint version, yml syntax consistency
* Use skip-pkg-cache workaround
* Workaround needed for both?
* Seeding weakrand is no longer necessary
---------
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2023-07-21 22:00:48 -06:00 
						 
				 
			
				
					
						
							
							
								mmm444 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							424ae0f420 
							
						 
					 
					
						
						
							
							reverseproxy: Experimental streaming timeouts ( #5567 )  
						
						... 
						
						
						
						* reverseproxy: WIP streaming timeouts
* More verbose logging by using the child logger
* reverseproxy: Implement streaming timeouts
* reverseproxy: Refactor cleanup
* reverseproxy: Avoid **time.Timer
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2023-06-19 15:54:43 -06:00 
						 
				 
			
				
					
						
							
							
								Corin Langosch 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2ddb717144 
							
						 
					 
					
						
						
							
							reverseproxy: Fix parsing of source IP in case it's an ipv6 address ( #5569 )  
						
						
						
						
					 
					
						2023-06-12 09:35:22 -06:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							335cd2e8a4 
							
						 
					 
					
						
						
							
							reverseproxy: Fix active health check header canonicalization, refactor ( #5446 )  
						
						
						
						
					 
					
						2023-05-05 15:19:22 -06:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4636109ce1 
							
						 
					 
					
						
						
							
							reverseproxy: Remove deprecated lookup_srv ( #5396 )  
						
						
						
						
					 
					
						2023-04-10 20:08:40 +00:00 
						 
				 
			
				
					
						
							
							
								Corin Langosch 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b6fe5d4b41 
							
						 
					 
					
						
						
							
							proxyprotocol: Add PROXY protocol support to reverse_proxy, add HTTP listener wrapper ( #5424 )  
						
						... 
						
						
						
						Co-authored-by: WeidiDeng <weidi_deng@icloud.com>
Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2023-03-31 17:44:53 -04:00 
						 
				 
			
				
					
						
							
							
								Trea Hauet 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2182270a2c 
							
						 
					 
					
						
						
							
							reverseproxy: Reset Content-Length to prevent FastCGI from hanging ( #5435 )  
						
						... 
						
						
						
						Fixes: https://github.com/caddyserver/caddy/issues/5420  
						
						
					 
					
						2023-03-16 11:42:16 -06:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4b119a475f 
							
						 
					 
					
						
						
							
							reverseproxy: Don't buffer chunked requests ( fix   #5366 ) ( #5367 )  
						
						... 
						
						
						
						* reverseproxy: Don't buffer chunked requests (fix  #5366 )
Mostly reverts 845bc4d50b437995d574819850206e4b3db4040d (#5289 )
Adds warning for unsafe config.
Deprecates unsafe properties in favor of simpler, safer designed ones.
* Update modules/caddyhttp/reverseproxy/caddyfile.go
Co-authored-by: Y.Horie <u5.horie@gmail.com>
* Update modules/caddyhttp/reverseproxy/reverseproxy.go
Co-authored-by: Y.Horie <u5.horie@gmail.com>
* Update modules/caddyhttp/reverseproxy/reverseproxy.go
Co-authored-by: Y.Horie <u5.horie@gmail.com>
* Remove unused code
---------
Co-authored-by: Y.Horie <u5.horie@gmail.com> 
						
						
					 
					
						2023-02-11 17:25:29 -07:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							223cbe3d0b 
							
						 
					 
					
						
						
							
							caddyhttp: Add server-level trusted_proxies config ( #5103 )  
						
						
						
						
					 
					
						2023-01-10 00:08:23 -05:00 
						 
				 
			
				
					
						
							
							
								Y.Horie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							845bc4d50b 
							
						 
					 
					
						
						
							
							reverseproxy: Fix hanging for Transfer-Encoding: chunked ( #5289 )  
						
						... 
						
						
						
						* Fixes  #5236 
* enable request body buffering in reverse proxy
  when the request header has Transfer-Encoding: chunked 
						
						
					 
					
						2023-01-09 00:13:34 -07:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fcdbc69fab 
							
						 
					 
					
						
						
							
							Fix comment  
						
						... 
						
						
						
						I apparently read the diff backwards in
2a8c458ffedf886af9542541ea1b1de62370929d 
						
						
					 
					
						2022-09-29 12:38:36 -06:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2a8c458ffe 
							
						 
					 
					
						
						
							
							reverseproxy: Parse humanized byte size ( fix   #5095 )  
						
						
						
						
					 
					
						2022-09-29 12:37:06 -06:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e2991eb019 
							
						 
					 
					
						
						
							
							reverseproxy: On 103 don't delete own headers ( #5091 )  
						
						... 
						
						
						
						See #5074  
						
						
					 
					
						2022-09-29 08:19:56 -06:00 
						 
				 
			
				
					
						
							
							
								Matthew Holt 
							
						 
					 
					
						
						
						
						
							
						
						
							e43b6d8178 
							
						 
					 
					
						
						
							
							core: Variadic Context.Logger(); soft deprecation  
						
						... 
						
						
						
						Ideally I'd just remove the parameter to caddy.Context.Logger(), but
this would break most Caddy plugins.
Instead, I'm making it variadic and marking it as partially deprecated.
In the future, I might completely remove the parameter once most
plugins have updated. 
						
						
					 
					
						2022-09-16 16:55:36 -06:00 
						 
				 
			
				
					
						
							
							
								Matt Holt 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							66476d8c8f 
							
						 
					 
					
						
						
							
							reverseproxy: Close hijacked conns on reload/quit ( #4895 )  
						
						... 
						
						
						
						* reverseproxy: Close hijacked conns on reload/quit
We also send a Close control message to both ends of
WebSocket connections. I have tested this many times in
my dev environment with consistent success, although
the variety of scenarios was limited.
* Oops... actually call Close() this time
* CloseMessage --> closeMessage
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* Use httpguts, duh
* Use map instead of sync.Map
Co-authored-by: Francis Lavoie <lavofr@gmail.com> 
						
						
					 
					
						2022-09-02 17:01:55 -06:00 
						 
				 
			
				
					
						
							
							
								Francis Lavoie 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d4d8bbcfc6 
							
						 
					 
					
						
						
							
							events: Implement event system ( #4912 )  
						
						... 
						
						
						
						Co-authored-by: Matt Holt <mholt@users.noreply.github.com> 
						
						
					 
					
						2022-08-31 15:01:30 -06:00