mirror of
				https://github.com/facebook/zstd.git
				synced 2025-10-25 00:03:26 -04:00 
			
		
		
		
	* Switch to yearless copyright per FB policy * Fix up SPDX-License-Identifier lines in `contrib/linux-kernel` sources * Add zstd copyright/license header to the `contrib/linux-kernel` sources * Update the `tests/test-license.py` to check for yearless copyright * Improvements to `tests/test-license.py` * Check `contrib/linux-kernel` in `tests/test-license.py`
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env python3
 | |
| 
 | |
| # ################################################################
 | |
| # Copyright (c) Facebook, Inc.
 | |
| # All rights reserved.
 | |
| #
 | |
| # This source code is licensed under both the BSD-style license (found in the
 | |
| # LICENSE file in the root directory of this source tree) and the GPLv2 (found
 | |
| # in the COPYING file in the root directory of this source tree).
 | |
| # You may select, at your option, one of the above-listed licenses.
 | |
| # ##########################################################################
 | |
| 
 | |
| # Rate limiter, replacement for pv
 | |
| # this rate limiter does not "catch up" after a blocking period
 | |
| # Limitations:
 | |
| # - only accepts limit speed in MB/s
 | |
| 
 | |
| import sys
 | |
| import time
 | |
| 
 | |
| MB = 1024 * 1024
 | |
| rate = float(sys.argv[1]) * MB
 | |
| start = time.time()
 | |
| total_read = 0
 | |
| 
 | |
| # sys.stderr.close()  # remove error message, for Ctrl+C
 | |
| 
 | |
| try:
 | |
|   buf = " "
 | |
|   while len(buf):
 | |
|     now = time.time()
 | |
|     to_read = max(int(rate * (now - start)), 1)
 | |
|     max_buf_size = 1 * MB
 | |
|     to_read = min(to_read, max_buf_size)
 | |
|     start = now
 | |
| 
 | |
|     buf = sys.stdin.buffer.read(to_read)
 | |
|     sys.stdout.buffer.write(buf)
 | |
| 
 | |
| except (KeyboardInterrupt, BrokenPipeError) as e:
 | |
|     pass
 |