You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			28 lines
		
	
	
		
			804 B
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			28 lines
		
	
	
		
			804 B
		
	
	
	
		
			Python
		
	
### IMPORTS
 | 
						|
### ============================================================================
 | 
						|
## Future
 | 
						|
from __future__ import annotations
 | 
						|
 | 
						|
## Standard Library
 | 
						|
 | 
						|
## Installed
 | 
						|
 | 
						|
## Application
 | 
						|
 | 
						|
 | 
						|
### CLASSES
 | 
						|
### ============================================================================
 | 
						|
class PythonJsonLoggerError(Exception):
 | 
						|
    "Generic base clas for all Python JSON Logger exceptions"
 | 
						|
 | 
						|
 | 
						|
class MissingPackageError(ImportError, PythonJsonLoggerError):
 | 
						|
    "A required package is missing"
 | 
						|
 | 
						|
    def __init__(self, name: str, extras_name: str | None = None) -> None:
 | 
						|
        msg = f"The {name!r} package is required but could not be found."
 | 
						|
        if extras_name is not None:
 | 
						|
            msg += f" It can be installed using 'python-json-logger[{extras_name}]'."
 | 
						|
        super().__init__(msg)
 | 
						|
        return
 |