in client/commands/backend_arguments.py [0:0]
def serialize(self) -> Dict[str, Any]:
local_root = self.get_local_root()
return {
"source_paths": self.source_paths.serialize(),
"search_paths": [
element.command_line_argument() for element in self.search_paths
],
"excludes": self.excludes,
"checked_directory_allowlist": self.checked_directory_allowlist,
"checked_directory_blocklist": self.checked_directory_blocklist,
"extensions": self.extensions,
"log_path": self.log_path,
"global_root": self.global_root,
**({} if local_root is None else {"local_root": local_root}),
"debug": self.debug,
"python_version": {
"major": self.python_version.major,
"minor": self.python_version.minor,
"micro": self.python_version.micro,
},
"shared_memory": self.shared_memory.to_json(),
"parallel": self.parallel,
"number_of_workers": self.number_of_workers,
**(
{}
if self.remote_logging is None
else {"remote_logging": self.remote_logging.serialize()}
),
**(
{}
if self.profiling_output is None
else {"profiling_output": str(self.profiling_output)}
),
**(
{}
if self.memory_profiling_output is None
else {"memory_profiling_output": str(self.memory_profiling_output)}
),
}