Nick Pope 
							
						 
					 
					
						
						
							
						
						b47f2f5b90 
					 
					
						
						
							
							Fixed   #33865  -- Optimized LimitedStream wrapper.  
						
						... 
						
						
						
						The current implementation of LimitedStream is slow because .read()
performs an extra copy into a buffer and .readline() performs two
extra copies. The stream being wrapped is already typically a BytesIO
object so this is unnecessary.
This implementation has largely been untouched for 12 years and,
inspired by a simpler implementation in werkzeug, it was possible to
achieve the following performance improvement:
LimitedStream.read() (single line):
  Mean +- std dev: [bench_limitedstream-main] 286 ns +- 6 ns
  -> [bench_limitedstream-patch] 227 ns +- 6 ns: 1.26x faster
LimitedStream.readline() (single line):
  Mean +- std dev: [bench_limitedstream-main] 507 ns +- 11 ns
  -> [bench_limitedstream-patch] 232 ns +- 8 ns: 2.18x faster
LimitedStream.read(8192) (single line):
  Mean +- std dev: [bench_limitedstream-main] 360 ns +- 8 ns
  -> [bench_limitedstream-patch] 297 ns +- 6 ns: 1.21x faster
LimitedStream.readline(8192) (single line):
  Mean +- std dev: [bench_limitedstream-main] 602 ns +- 10 ns
  -> [bench_limitedstream-patch] 305 ns +- 10 ns: 1.98x faster
LimitedStream.read() (multiple lines):
  Mean +- std dev: [bench_limitedstream-main] 290 ns +- 5 ns
  -> [bench_limitedstream-patch] 236 ns +- 6 ns: 1.23x faster
LimitedStream.readline() (multiple lines):
  Mean +- std dev: [bench_limitedstream-main] 517 ns +- 19 ns
  -> [bench_limitedstream-patch] 239 ns +- 7 ns: 2.16x faster
LimitedStream.read(8192) (multiple lines):
  Mean +- std dev: [bench_limitedstream-main] 363 ns +- 8 ns
  -> [bench_limitedstream-patch] 311 ns +- 11 ns: 1.17x faster
LimitedStream.readline(8192) (multiple lines):
  Mean +- std dev: [bench_limitedstream-main] 601 ns +- 12 ns
  -> [bench_limitedstream-patch] 308 ns +- 7 ns: 1.95x faster
Geometric mean: 1.59x faster 
						
						
					 
					
						2023-01-05 19:26:56 +01:00 
						 
				 
			
				
					
						
							
							
								django-bot 
							
						 
					 
					
						
						
							
						
						9c19aff7c7 
					 
					
						
						
							
							Refs  #33476  -- Reformatted code with Black.  
						
						
						
						
					 
					
						2022-02-07 20:37:05 +01:00 
						 
				 
			
				
					
						
							
							
								Tom Forbes 
							
						 
					 
					
						
						
							
						
						141ab6bc6d 
					 
					
						
						
							
							Refs  #29069  -- Added test for calling request_finished signal by static file responses.  
						
						... 
						
						
						
						Fixed in 41a3b3d186 
						
						
					 
					
						2020-04-20 06:17:57 +02:00 
						 
				 
			
				
					
						
							
							
								Florian Apolloner 
							
						 
					 
					
						
						
							
						
						41a3b3d186 
					 
					
						
						
							
							Fixed   #31240  -- Properly closed FileResponse when wsgi.file_wrapper is used.  
						
						... 
						
						
						
						Thanks to Oskar Persson for the report. 
						
						
					 
					
						2020-02-11 20:39:12 +01:00 
						 
				 
			
				
					
						
							
							
								Min ho Kim 
							
						 
					 
					
						
						
							
						
						7bd9633320 
					 
					
						
						
							
							Fixed typos in test names and a comment.  
						
						
						
						
					 
					
						2019-08-23 10:46:43 +02:00 
						 
				 
			
				
					
						
							
							
								chillaranand 
							
						 
					 
					
						
						
							
						
						d6eaf7c018 
					 
					
						
						
							
							Refs  #23919  -- Replaced super(ClassName, self) with super().  
						
						
						
						
					 
					
						2017-01-25 12:23:46 -05:00 
						 
				 
			
				
					
						
							
							
								Claude Paroz 
							
						 
					 
					
						
						
							
						
						042b7350a0 
					 
					
						
						
							
							Refs  #23919  -- Removed unneeded str() calls  
						
						
						
						
					 
					
						2017-01-20 14:13:55 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Charette 
							
						 
					 
					
						
						
							
						
						cecc079168 
					 
					
						
						
							
							Refs  #23919  -- Stopped inheriting from object to define new style classes.  
						
						
						
						
					 
					
						2017-01-19 08:39:46 +01:00 
						 
				 
			
				
					
						
							
							
								Claude Paroz 
							
						 
					 
					
						
						
							
						
						d7b9aaa366 
					 
					
						
						
							
							Refs  #23919  -- Removed encoding preambles and future imports  
						
						
						
						
					 
					
						2017-01-18 09:55:19 +01:00 
						 
				 
			
				
					
						
							
							
								Tim Graham 
							
						 
					 
					
						
						
							
						
						7b05ffd95d 
					 
					
						
						
							
							Removed a bit of builtin_server tests for Python ≤ 2.7.3.  
						
						
						
						
					 
					
						2016-11-10 22:20:09 -05:00 
						 
				 
			
				
					
						
							
							
								za 
							
						 
					 
					
						
						
							
						
						321e94fa41 
					 
					
						
						
							
							Refs  #27392  -- Removed "Tests that", "Ensures that", etc. from test docstrings.  
						
						
						
						
					 
					
						2016-11-10 21:30:21 -05:00 
						 
				 
			
				
					
						
							
							
								Tim Graham 
							
						 
					 
					
						
						
							
						
						0ed7d15563 
					 
					
						
						
							
							Sorted imports with isort; refs  #23860 .  
						
						
						
						
					 
					
						2015-02-06 08:16:28 -05:00 
						 
				 
			
				
					
						
							
							
								Ramiro Morales 
							
						 
					 
					
						
						
							
						
						9a982d5ccc 
					 
					
						
						
							
							Moved ServerHandler helper class to tests.  
						
						... 
						
						
						
						It has been only used in the builtin_servers tests since Django 1.4. 
						
						
					 
					
						2014-03-30 20:55:40 -03:00 
						 
				 
			
				
					
						
							
							
								Aymeric Augustin 
							
						 
					 
					
						
						
							
						
						6e895f9e06 
					 
					
						
						
							
							Removed superfluous models.py files.  
						
						... 
						
						
						
						Added comments in the three empty models.py files that are still needed.
Adjusted the test runner to add applications corresponding to test
labels to INSTALLED_APPS even when they don't have a models module. 
						
						
					 
					
						2013-12-17 11:16:48 +01:00 
						 
				 
			
				
					
						
							
							
								Aymeric Augustin 
							
						 
					 
					
						
						
							
						
						cfcf4b3605 
					 
					
						
						
							
							Stopped using django.utils.unittest in the test suite.  
						
						... 
						
						
						
						Refs #20680 . 
						
						
					 
					
						2013-07-01 14:29:33 +02:00 
						 
				 
			
				
					
						
							
							
								Matthew Wood 
							
						 
					 
					
						
						
							
						
						a7960bcb35 
					 
					
						
						
							
							Fixed   #18972  -- Refactored bundled wsgi server's chunking algorithm.  
						
						... 
						
						
						
						Thanks to amosonn at yahoo.com for the report, @doda for the initial patch and
@datagrok for the revamped logic and test case. 
						
						
					 
					
						2013-03-20 18:46:26 -04:00 
						 
				 
			
				
					
						
							
							
								Florian Apolloner 
							
						 
					 
					
						
						
							
						
						89f40e3624 
					 
					
						
						
							
							Merged regressiontests and modeltests into the test root.  
						
						
						
						
					 
					
						2013-02-26 14:36:57 +01:00