aiida.manage.configuration package#
Modules related to the configuration of an AiiDA instance.
- aiida.manage.configuration._merge_deprecated_cache_yaml(config, filepath)[source]#
Merge the deprecated cache_config.yml into the config.
- aiida.manage.configuration.create_profile(config: Config, storage_cls, *, name: str, email: str, first_name: str | None = None, last_name: str | None = None, institution: str | None = None, **kwargs) Profile [source]#
Create a new profile, initialise its storage and create a default user.
- Parameters:
config – The config instance.
storage_cls – The storage class obtained through loading the entry point from
aiida.storage
group.name – Name of the profile.
email – Email for the default user.
first_name – First name for the default user.
last_name – Last name for the default user.
institution – Institution for the default user.
kwargs – Arguments to initialise instance of the selected storage implementation.
- aiida.manage.configuration.get_config(create=False)[source]#
Return the current configuration.
- If the configuration has not been loaded yet
the configuration is loaded using
load_config
the global CONFIG variable is set
the configuration object is returned
Note: This function will except if no configuration file can be found. Only call this function, if you need information from the configuration file.
- Parameters:
create (bool) – if True, will create the configuration file if it does not already exist
- Returns:
the config
- Return type:
- Raises:
aiida.common.ConfigurationError – if the configuration file could not be found, read or deserialized
- aiida.manage.configuration.get_config_option(option_name: str) Any [source]#
Return the value of a configuration option.
In order of priority, the option is returned from:
The current profile, if loaded and the option specified
The current configuration, if loaded and the option specified
The default value for the option
- Parameters:
option_name – the name of the option to return
- Returns:
the value of the option
- Raises:
aiida.common.exceptions.ConfigurationError – if the option is not found
- aiida.manage.configuration.get_config_path()[source]#
Returns path to .aiida configuration directory.
- aiida.manage.configuration.get_profile() Profile | None [source]#
Return the currently loaded profile.
- Returns:
the globally loaded Profile instance or None
- aiida.manage.configuration.load_config(create=False) Config [source]#
Instantiate Config object representing an AiiDA configuration file.
Warning: Contrary to
get_config()
, this function is uncached and will always create a new Config object. You may want to callget_config()
instead.- Parameters:
create (bool) – if True, will create the configuration file if it does not already exist
- Returns:
the config
- Return type:
- Raises:
aiida.common.MissingConfigurationError – if the configuration file could not be found and create=False
- aiida.manage.configuration.load_documentation_profile()[source]#
Load a dummy profile just for the purposes of being able to build the documentation.
The building of the documentation will require importing the aiida package and some code will try to access the loaded configuration and profile, which if not done will except. Calling this function allows the documentation to be built without having to install and configure AiiDA, nor having an actual database present.
- aiida.manage.configuration.load_profile(profile: str | None = None, allow_switch=False) Profile [source]#
Load a global profile, unloading any previously loaded profile.
Note
if a profile is already loaded and no explicit profile is specified, nothing will be done
- Parameters:
profile – the name of the profile to load, by default will use the one marked as default in the config
allow_switch – if True, will allow switching to a different profile when storage is already loaded
- Returns:
the loaded Profile instance
- Raises:
aiida.common.exceptions.InvalidOperation – if another profile has already been loaded and allow_switch is False
- aiida.manage.configuration.profile_context(profile: str | None = None, allow_switch=False) Profile [source]#
Return a context manager for temporarily loading a profile, and unloading on exit.
- Parameters:
profile – the name of the profile to load, by default will use the one marked as default in the config
allow_switch – if True, will allow switching to a different profile
- Returns:
a context manager for temporarily loading a profile
- aiida.manage.configuration.reset_config()[source]#
Reset the globally loaded config.
Warning
This is experimental functionality and should for now be used only internally. If the reset is unclean weird unknown side-effects may occur that end up corrupting or destroying data.
Subpackages#
- aiida.manage.configuration.migrations package
- Submodules
AbstractStorageAndProcess
AbstractStorageAndProcess.__abstractmethods__
AbstractStorageAndProcess.__module__
AbstractStorageAndProcess.__parameters__
AbstractStorageAndProcess.__subclasshook__()
AbstractStorageAndProcess._abc_impl
AbstractStorageAndProcess._is_protocol
AbstractStorageAndProcess.down_compatible
AbstractStorageAndProcess.down_revision
AbstractStorageAndProcess.downgrade()
AbstractStorageAndProcess.process_keys
AbstractStorageAndProcess.storage_conversions
AbstractStorageAndProcess.up_compatible
AbstractStorageAndProcess.up_revision
AbstractStorageAndProcess.upgrade()
AddMessageBroker
AddMessageBroker.__abstractmethods__
AddMessageBroker.__module__
AddMessageBroker.__parameters__
AddMessageBroker.__subclasshook__()
AddMessageBroker._abc_impl
AddMessageBroker._is_protocol
AddMessageBroker.down_compatible
AddMessageBroker.down_revision
AddMessageBroker.downgrade()
AddMessageBroker.up_compatible
AddMessageBroker.up_revision
AddMessageBroker.upgrade()
AddPrefixToStorageBackendTypes
AddPrefixToStorageBackendTypes.__abstractmethods__
AddPrefixToStorageBackendTypes.__module__
AddPrefixToStorageBackendTypes.__parameters__
AddPrefixToStorageBackendTypes.__subclasshook__()
AddPrefixToStorageBackendTypes._abc_impl
AddPrefixToStorageBackendTypes._is_protocol
AddPrefixToStorageBackendTypes.down_compatible
AddPrefixToStorageBackendTypes.down_revision
AddPrefixToStorageBackendTypes.downgrade()
AddPrefixToStorageBackendTypes.up_compatible
AddPrefixToStorageBackendTypes.up_revision
AddPrefixToStorageBackendTypes.upgrade()
AddProfileUuid
AddProfileUuid.__abstractmethods__
AddProfileUuid.__module__
AddProfileUuid.__parameters__
AddProfileUuid.__subclasshook__()
AddProfileUuid._abc_impl
AddProfileUuid._is_protocol
AddProfileUuid.down_compatible
AddProfileUuid.down_revision
AddProfileUuid.downgrade()
AddProfileUuid.up_compatible
AddProfileUuid.up_revision
AddProfileUuid.upgrade()
AddTestProfileKey
AddTestProfileKey.__abstractmethods__
AddTestProfileKey.__module__
AddTestProfileKey.__parameters__
AddTestProfileKey.__subclasshook__()
AddTestProfileKey._abc_impl
AddTestProfileKey._is_protocol
AddTestProfileKey.down_compatible
AddTestProfileKey.down_revision
AddTestProfileKey.downgrade()
AddTestProfileKey.up_compatible
AddTestProfileKey.up_revision
AddTestProfileKey.upgrade()
Initial
MergeStorageBackendTypes
MergeStorageBackendTypes.__abstractmethods__
MergeStorageBackendTypes.__module__
MergeStorageBackendTypes.__parameters__
MergeStorageBackendTypes.__subclasshook__()
MergeStorageBackendTypes._abc_impl
MergeStorageBackendTypes._is_protocol
MergeStorageBackendTypes.down_compatible
MergeStorageBackendTypes.down_revision
MergeStorageBackendTypes.downgrade()
MergeStorageBackendTypes.up_compatible
MergeStorageBackendTypes.up_revision
MergeStorageBackendTypes.upgrade()
SimplifyDefaultProfiles
SimplifyDefaultProfiles.__abstractmethods__
SimplifyDefaultProfiles.__module__
SimplifyDefaultProfiles.__parameters__
SimplifyDefaultProfiles.__subclasshook__()
SimplifyDefaultProfiles._abc_impl
SimplifyDefaultProfiles._is_protocol
SimplifyDefaultProfiles.down_compatible
SimplifyDefaultProfiles.down_revision
SimplifyDefaultProfiles.downgrade()
SimplifyDefaultProfiles.up_compatible
SimplifyDefaultProfiles.up_revision
SimplifyDefaultProfiles.upgrade()
SimplifyOptions
SimplifyOptions.__abstractmethods__
SimplifyOptions.__module__
SimplifyOptions.__parameters__
SimplifyOptions.__subclasshook__()
SimplifyOptions._abc_impl
SimplifyOptions._is_protocol
SimplifyOptions.conversions
SimplifyOptions.down_compatible
SimplifyOptions.down_revision
SimplifyOptions.downgrade()
SimplifyOptions.up_compatible
SimplifyOptions.up_revision
SimplifyOptions.upgrade()
SingleMigration
SingleMigration.__abstractmethods__
SingleMigration.__annotations__
SingleMigration.__dict__
SingleMigration.__init__()
SingleMigration.__module__
SingleMigration.__parameters__
SingleMigration.__subclasshook__()
SingleMigration.__weakref__
SingleMigration._abc_impl
SingleMigration._is_protocol
SingleMigration.down_compatible
SingleMigration.down_revision
SingleMigration.downgrade()
SingleMigration.up_compatible
SingleMigration.up_revision
SingleMigration.upgrade()
check_and_migrate_config()
config_needs_migrating()
downgrade_config()
get_current_version()
get_oldest_compatible_version()
upgrade_config()
- Submodules
- aiida.manage.configuration.schema package
Submodules#
Module that defines the configuration file of an AiiDA instance and functions to create and load it.
Despite the import of the annotations backport below which enables postponed type annotation evaluation as implemented
with PEP 563 (https://peps.python.org/pep-0563/), this is not compatible with pydantic
for Python 3.9 and older (
See pydantic/pydantic#2678 for details).
- class aiida.manage.configuration.config.Config(filepath: str, config: dict, validate: bool = True)[source]#
Bases:
object
Object that represents the configuration file of an AiiDA instance.
- KEY_DEFAULT_PROFILE = 'default_profile'#
- KEY_OPTIONS = 'options'#
- KEY_PROFILES = 'profiles'#
- KEY_SCHEMA = '$schema'#
- KEY_VERSION = 'CONFIG_VERSION'#
- KEY_VERSION_CURRENT = 'CURRENT'#
- KEY_VERSION_OLDEST_COMPATIBLE = 'OLDEST_COMPATIBLE'#
- __dict__ = mappingproxy({'__module__': 'aiida.manage.configuration.config', '__doc__': 'Object that represents the configuration file of an AiiDA instance.', 'KEY_VERSION': 'CONFIG_VERSION', 'KEY_VERSION_CURRENT': 'CURRENT', 'KEY_VERSION_OLDEST_COMPATIBLE': 'OLDEST_COMPATIBLE', 'KEY_DEFAULT_PROFILE': 'default_profile', 'KEY_PROFILES': 'profiles', 'KEY_OPTIONS': 'options', 'KEY_SCHEMA': '$schema', 'from_file': <classmethod(<function Config.from_file>)>, '_backup': <classmethod(<function Config._backup>)>, 'validate': <staticmethod(<function Config.validate>)>, '__init__': <function Config.__init__>, '__eq__': <function Config.__eq__>, '__ne__': <function Config.__ne__>, 'handle_invalid': <function Config.handle_invalid>, 'dictionary': <property object>, 'version': <property object>, 'version_oldest_compatible': <property object>, 'version_settings': <property object>, 'filepath': <property object>, 'dirpath': <property object>, 'default_profile_name': <property object>, 'profile_names': <property object>, 'profiles': <property object>, 'validate_profile': <function Config.validate_profile>, 'get_profile': <function Config.get_profile>, 'create_profile': <function Config.create_profile>, 'add_profile': <function Config.add_profile>, 'update_profile': <function Config.update_profile>, 'remove_profile': <function Config.remove_profile>, 'delete_profile': <function Config.delete_profile>, 'set_default_profile': <function Config.set_default_profile>, 'set_default_user_email': <function Config.set_default_user_email>, 'options': <property object>, 'set_option': <function Config.set_option>, 'unset_option': <function Config.unset_option>, 'get_option': <function Config.get_option>, 'get_options': <function Config.get_options>, 'store': <function Config.store>, '_atomic_write': <function Config._atomic_write>, '__dict__': <attribute '__dict__' of 'Config' objects>, '__weakref__': <attribute '__weakref__' of 'Config' objects>, '__hash__': None, '__annotations__': {}})#
- __hash__ = None#
- __init__(filepath: str, config: dict, validate: bool = True)[source]#
Instantiate a configuration object from a configuration dictionary and its filepath.
If an empty dictionary is passed, the constructor will create the skeleton configuration dictionary.
- Parameters:
filepath – the absolute filepath of the configuration file
config – the content of the configuration file in dictionary form
validate – validate the dictionary against the schema
- __module__ = 'aiida.manage.configuration.config'#
- __ne__(other)[source]#
Two configurations are considered unequal, when their dictionaries are unequal.
- __weakref__#
list of weak references to the object (if defined)
- _atomic_write(filepath=None)[source]#
Write the config as it is in memory, i.e. the contents of
self.dictionary
, to disk.Note
this command will write the config from memory to a temporary file in the same directory as the target file
filepath
. It will then useos.rename
to move the temporary file tofilepath
which will be overwritten if it already exists. Theos.rename
is the operation that gives the best guarantee of being atomic within the limitations of the application.- Parameters:
filepath – optional filepath to write the contents to, if not specified, the default filename is used.
- classmethod _backup(filepath)[source]#
Create a backup of the configuration file with the given filepath.
- Parameters:
filepath – absolute path to the configuration file to backup
- Returns:
the absolute path of the created backup
- add_profile(profile)[source]#
Add a profile to the configuration.
- Parameters:
profile – the profile configuration dictionary
- Returns:
self
- create_profile(name: str, storage_cls: Type['StorageBackend'], storage_config: dict[str, str]) Profile [source]#
Create a new profile and initialise its storage.
- Parameters:
name – The profile name.
storage_cls – The
aiida.orm.implementation.storage_backend.StorageBackend
implementation to use.storage_config – The configuration necessary to initialise and connect to the storage backend.
- Returns:
The created profile.
- Raises:
ValueError – If the profile already exists.
TypeError – If the
storage_cls
is not a subclass ofaiida.orm.implementation.storage_backend.StorageBackend
.EntryPointError – If the
storage_cls
does not have an associated entry point.StorageMigrationError – If the storage cannot be initialised.
- property default_profile_name#
Return the default profile name.
- Returns:
the default profile name or None if not defined
- delete_profile(name: str, include_database: bool = True, include_database_user: bool = False, include_repository: bool = True)[source]#
Delete a profile including its storage.
- Parameters:
include_database – also delete the database configured for the profile.
include_database_user – also delete the database user configured for the profile.
include_repository – also delete the repository configured for the profile.
- property dictionary: dict#
Return the dictionary representation of the config as it would be written to file.
- Returns:
dictionary representation of config as it should be written to file
- property dirpath#
- property filepath#
- classmethod from_file(filepath)[source]#
Instantiate a configuration object from the contents of a given file.
Note
if the filepath does not exist an empty file will be created with the current default configuration and will be written to disk. If the filepath does already exist but contains a configuration with an outdated schema, the content will be migrated and then written to disk.
- Parameters:
filepath – the absolute path to the configuration file
- Returns:
Config instance
- get_option(option_name, scope=None, default=True)[source]#
Get a configuration option for a certain scope.
- Parameters:
option_name – the name of the configuration option
scope – get the option for this profile or globally if not specified
default – boolean, If True will return the option default, even if not defined within the given scope
- Returns:
the option value or None if not set for the given scope
- get_options(scope: str | None = None) Dict[str, Tuple[Option, str, Any]] [source]#
Return a dictionary of all option values and their source (‘profile’, ‘global’, or ‘default’).
- Parameters:
scope – the profile name or globally if not specified
- Returns:
(option, source, value)
- get_profile(name: str | None = None) Profile [source]#
Return the profile for the given name or the default one if not specified.
- Returns:
the profile instance or None if it does not exist
- Raises:
aiida.common.ProfileConfigurationError – if the name is not found in the configuration file
- handle_invalid(message)[source]#
Handle an incoming invalid configuration dictionary.
The current content of the configuration file will be written to a backup file.
- Parameters:
message – a string message to echo with describing the infraction
- property options#
- property profile_names#
Return the list of profile names.
- Returns:
list of profile names
- property profiles#
Return the list of profiles.
- Returns:
the profiles
- Return type:
list of Profile instances
- remove_profile(name)[source]#
Remove a profile from the configuration.
- Parameters:
name – the name of the profile to remove
- Raises:
aiida.common.ProfileConfigurationError – if the given profile does not exist
- Returns:
self
- set_default_profile(name, overwrite=False)[source]#
Set the given profile as the new default.
- Parameters:
name – name of the profile to set as new default
overwrite – when True, set the profile as the new default even if a default profile is already defined
- Raises:
aiida.common.ProfileConfigurationError – if the given profile does not exist
- Returns:
self
- set_default_user_email(profile: Profile, user_email: str) None [source]#
Set the default user for the given profile.
Warning
This does not update the cached default user on the storage backend associated with the profile. To do so, use
aiida.manage.manager.Manager.set_default_user_email()
instead.- Parameters:
profile – The profile to update.
user_email – The email of the user to set as the default user.
- set_option(option_name, option_value, scope=None, override=True)[source]#
Set a configuration option for a certain scope.
- Parameters:
option_name – the name of the configuration option
option_value – the option value
scope – set the option for this profile or globally if not specified
override – boolean, if False, will not override the option if it already exists
- Returns:
the parsed value (potentially cast to a valid type)
- store()[source]#
Write the current config to file.
Note
if the configuration file already exists on disk and its contents differ from those in memory, a backup of the original file on disk will be created before overwriting it.
- Returns:
self
- unset_option(option_name: str, scope=None)[source]#
Unset a configuration option for a certain scope.
- Parameters:
option_name – the name of the configuration option
scope – unset the option for this profile or globally if not specified
- update_profile(profile)[source]#
Update a profile in the configuration.
- Parameters:
profile – the profile instance to update
- Returns:
self
- static validate(config: dict, filepath: str | None = None)[source]#
Validate a configuration dictionary.
- validate_profile(name)[source]#
Validate that a profile exists.
- Parameters:
name – name of the profile:
- Raises:
aiida.common.ProfileConfigurationError – if the name is not found in the configuration file
- property version#
- property version_oldest_compatible#
- property version_settings#
- class aiida.manage.configuration.config.ConfigSchema(*, CONFIG_VERSION: ConfigVersionSchema | None = None, profiles: dict[str, ProfileSchema] | None = None, options: GlobalOptionsSchema | None = None, default_profile: str | None = None)[source]#
Bases:
BaseModel
Schema for the configuration of an AiiDA instance.
- CONFIG_VERSION: ConfigVersionSchema | None#
- __abstractmethods__ = frozenset({})#
- __annotations__ = {'CONFIG_VERSION': 'Optional[ConfigVersionSchema]', '__class_vars__': 'ClassVar[set[str]]', '__private_attributes__': 'ClassVar[dict[str, ModelPrivateAttr]]', '__pydantic_complete__': 'ClassVar[bool]', '__pydantic_core_schema__': 'ClassVar[CoreSchema]', '__pydantic_custom_init__': 'ClassVar[bool]', '__pydantic_decorators__': 'ClassVar[_decorators.DecoratorInfos]', '__pydantic_extra__': 'dict[str, Any] | None', '__pydantic_fields_set__': 'set[str]', '__pydantic_generic_metadata__': 'ClassVar[_generics.PydanticGenericMetadata]', '__pydantic_parent_namespace__': 'ClassVar[dict[str, Any] | None]', '__pydantic_post_init__': "ClassVar[None | Literal['model_post_init']]", '__pydantic_private__': 'dict[str, Any] | None', '__pydantic_root_model__': 'ClassVar[bool]', '__pydantic_serializer__': 'ClassVar[SchemaSerializer]', '__pydantic_validator__': 'ClassVar[SchemaValidator]', '__signature__': 'ClassVar[Signature]', 'default_profile': 'Optional[str]', 'model_config': 'ClassVar[ConfigDict]', 'model_fields': 'ClassVar[dict[str, FieldInfo]]', 'options': 'Optional[GlobalOptionsSchema]', 'profiles': 'Optional[dict[str, ProfileSchema]]'}#
- __dict__#
- __module__ = 'aiida.manage.configuration.config'#
- __pydantic_core_schema__: ClassVar[CoreSchema] = {'definitions': [{'lax_schema': {'function': {'function': <function get_enum_core_schema.<locals>.to_enum>, 'type': 'no-info'}, 'type': 'function-plain'}, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_functions': [<function get_enum_core_schema.<locals>.get_json_schema>]}, 'ref': 'aiida.common.log.LogLevels:94242080134800', 'strict_schema': {'json_schema': {'function': {'function': <function get_enum_core_schema.<locals>.to_enum>, 'type': 'no-info'}, 'type': 'function-plain'}, 'python_schema': {'steps': [{'cls': <enum 'LogLevels'>, 'type': 'is-instance'}, {'function': {'function': <function get_enum_core_schema.<locals>.<lambda>>, 'type': 'no-info'}, 'type': 'function-plain'}], 'type': 'chain'}, 'type': 'json-or-python'}, 'type': 'lax-or-strict'}], 'schema': {'cls': <class 'aiida.manage.configuration.config.ConfigSchema'>, 'config': {'title': 'ConfigSchema'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ConfigSchema'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ConfigSchema'>>]}, 'ref': 'aiida.manage.configuration.config.ConfigSchema:94242081024896', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'CONFIG_VERSION': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'cls': <class 'aiida.manage.configuration.config.ConfigVersionSchema'>, 'config': {'title': 'ConfigVersionSchema'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ConfigVersionSchema'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ConfigVersionSchema'>>]}, 'ref': 'aiida.manage.configuration.config.ConfigVersionSchema:94242080994624', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'CURRENT': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'model-field'}, 'OLDEST_COMPATIBLE': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'model-field'}}, 'model_name': 'ConfigVersionSchema', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'default_profile': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'options': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'cls': <class 'aiida.manage.configuration.config.GlobalOptionsSchema'>, 'config': {'title': 'GlobalOptionsSchema'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.GlobalOptionsSchema'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.GlobalOptionsSchema'>>]}, 'ref': 'aiida.manage.configuration.config.GlobalOptionsSchema:94242081006608', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'autofill__user__email': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'autofill__user__first_name': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'autofill__user__institution': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'autofill__user__last_name': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'caching__default_enabled': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': False, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'caching__disabled_for': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method ProfileOptionsSchema.validate_caching_identifier_pattern of <class 'aiida.manage.configuration.config.GlobalOptionsSchema'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'list'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'caching__enabled_for': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method ProfileOptionsSchema.validate_caching_identifier_pattern of <class 'aiida.manage.configuration.config.GlobalOptionsSchema'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'list'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__default_workers': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 1, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__recursion_limit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 3000, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__timeout': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 2, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__worker_process_slots': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 200, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'db__batch_size': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 100000, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__aiida_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__aiopika_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__alembic_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__circus_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'INFO', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__db_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__kiwipy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__paramiko_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__plumpy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__sqlalchemy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__verdi_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'rest_api__profile_switching': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': False, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'rmq__task_timeout': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 10, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'runner__poll__interval': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 60, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'storage__sandbox': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'transport__task_maximum_attempts': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 5, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'transport__task_retry_initial_interval': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 20, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'verdi__shell__auto_import': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': ':', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'warnings__development_version': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': True, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'warnings__rabbitmq_version': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': True, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'warnings__showdeprecations': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': True, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'GlobalOptionsSchema', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'profiles': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'keys_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'strict': False, 'type': 'dict', 'values_schema': {'cls': <class 'aiida.manage.configuration.config.ProfileSchema'>, 'config': {'title': 'ProfileSchema'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ProfileSchema'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ProfileSchema'>>]}, 'ref': 'aiida.manage.configuration.config.ProfileSchema:94242081018208', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'default_user_email': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'options': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'cls': <class 'aiida.manage.configuration.config.ProfileOptionsSchema'>, 'config': {'title': 'ProfileOptionsSchema'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ProfileOptionsSchema'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ProfileOptionsSchema'>>]}, 'ref': 'aiida.manage.configuration.config.ProfileOptionsSchema:94242081001744', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'caching__default_enabled': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': False, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'caching__disabled_for': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method ProfileOptionsSchema.validate_caching_identifier_pattern of <class 'aiida.manage.configuration.config.ProfileOptionsSchema'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'list'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'caching__enabled_for': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method ProfileOptionsSchema.validate_caching_identifier_pattern of <class 'aiida.manage.configuration.config.ProfileOptionsSchema'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'list'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__default_workers': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 1, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__recursion_limit': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 3000, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__timeout': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 2, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'daemon__worker_process_slots': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 200, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'db__batch_size': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 100000, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__aiida_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__aiopika_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__alembic_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__circus_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'INFO', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__db_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__kiwipy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__paramiko_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__plumpy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__sqlalchemy_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'WARNING', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'logging__verdi_loglevel': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'REPORT', 'schema': {'schema_ref': 'aiida.common.log.LogLevels:94242080134800', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}, 'rmq__task_timeout': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 10, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'runner__poll__interval': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 60, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'storage__sandbox': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': None, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'transport__task_maximum_attempts': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 5, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'transport__task_retry_initial_interval': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 20, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'verdi__shell__auto_import': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': ':', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'warnings__rabbitmq_version': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': True, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'warnings__showdeprecations': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': True, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ProfileOptionsSchema', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'process_control': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'aiida.manage.configuration.config.ProcessControlConfig'>, 'config': {'title': 'ProcessControlConfig'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ProcessControlConfig'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ProcessControlConfig'>>]}, 'ref': 'aiida.manage.configuration.config.ProcessControlConfig:94242081011072', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'broker_host': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': '127.0.0.1', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'broker_parameters': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default_factory': <class 'dict'>, 'schema': {'keys_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'dict', 'values_schema': {'type': 'any'}}, 'type': 'default'}, 'type': 'model-field'}, 'broker_password': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'guest', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'broker_port': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 5432, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'int'}, 'type': 'default'}, 'type': 'model-field'}, 'broker_protocol': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'amqp', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'broker_username': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': 'guest', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'broker_virtual_host': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': '', 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ProcessControlConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'storage': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'cls': <class 'aiida.manage.configuration.config.ProfileStorageConfig'>, 'config': {'title': 'ProfileStorageConfig'}, 'custom_init': False, 'metadata': {'pydantic.internal.needs_apply_discriminated_union': False, 'pydantic_js_annotation_functions': [], 'pydantic_js_functions': [functools.partial(<function modify_model_json_schema>, cls=<class 'aiida.manage.configuration.config.ProfileStorageConfig'>), <bound method BaseModel.__get_pydantic_json_schema__ of <class 'aiida.manage.configuration.config.ProfileStorageConfig'>>]}, 'ref': 'aiida.manage.configuration.config.ProfileStorageConfig:94242081015968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'backend': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'type': 'model-field'}, 'config': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'keys_schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'strict': False, 'type': 'dict', 'values_schema': {'type': 'any'}}, 'type': 'model-field'}}, 'model_name': 'ProfileStorageConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'test_profile': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default': False, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'uuid': {'metadata': {'pydantic_js_annotation_functions': [<function get_json_schema_update_func.<locals>.json_schema_update_func>], 'pydantic_js_functions': []}, 'schema': {'default_factory': <function uuid4>, 'schema': {'metadata': {'pydantic.internal.needs_apply_discriminated_union': False}, 'type': 'str'}, 'serialization': {'function': <function ProfileSchema.serialize_dt>, 'info_arg': True, 'is_field_serializer': True, 'type': 'function-plain'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ProfileSchema', 'type': 'model-fields'}, 'type': 'model'}}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ConfigSchema', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}#
- __pydantic_decorators__: ClassVar[_decorators.DecoratorInfos] = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
- __pydantic_generic_metadata__: ClassVar[_generics.PydanticGenericMetadata] = {'args': (), 'origin': None, 'parameters': ()}#
- __pydantic_parent_namespace__: ClassVar[dict[str, Any] | None] = {'AIIDA_LOGGER': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Any': <pydantic._internal._model_construction._PydanticWeakRef object>, 'BaseModel': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ConfigDict': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ConfigVersionSchema': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ConfigurationError': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Dict': <pydantic._internal._model_construction._PydanticWeakRef object>, 'EntryPointError': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Field': <pydantic._internal._model_construction._PydanticWeakRef object>, 'GlobalOptionsSchema': <pydantic._internal._model_construction._PydanticWeakRef object>, 'LOGGER': <pydantic._internal._model_construction._PydanticWeakRef object>, 'List': <pydantic._internal._model_construction._PydanticWeakRef object>, 'LogLevels': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Option': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Optional': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ProcessControlConfig': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Profile': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ProfileOptionsSchema': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ProfileSchema': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ProfileStorageConfig': <pydantic._internal._model_construction._PydanticWeakRef object>, 'StorageMigrationError': <pydantic._internal._model_construction._PydanticWeakRef object>, 'TYPE_CHECKING': False, 'Tuple': <pydantic._internal._model_construction._PydanticWeakRef object>, 'Type': <pydantic._internal._model_construction._PydanticWeakRef object>, 'ValidationError': <pydantic._internal._model_construction._PydanticWeakRef object>, '__all__': ('Config',), '__builtins__': {'ArithmeticError': <class 'ArithmeticError'>, 'AssertionError': <class 'AssertionError'>, 'AttributeError': <class 'AttributeError'>, 'BaseException': <class 'BaseException'>, 'BlockingIOError': <class 'BlockingIOError'>, 'BrokenPipeError': <class 'BrokenPipeError'>, 'BufferError': <class 'BufferError'>, 'BytesWarning': <class 'BytesWarning'>, 'ChildProcessError': <class 'ChildProcessError'>, 'ConnectionAbortedError': <class 'ConnectionAbortedError'>, 'ConnectionError': <class 'ConnectionError'>, 'ConnectionRefusedError': <class 'ConnectionRefusedError'>, 'ConnectionResetError': <class 'ConnectionResetError'>, 'DeprecationWarning': <class 'DeprecationWarning'>, 'EOFError': <class 'EOFError'>, 'Ellipsis': Ellipsis, 'EncodingWarning': <class 'EncodingWarning'>, 'EnvironmentError': <class 'OSError'>, 'Exception': <class 'Exception'>, 'False': False, 'FileExistsError': <class 'FileExistsError'>, 'FileNotFoundError': <class 'FileNotFoundError'>, 'FloatingPointError': <class 'FloatingPointError'>, 'FutureWarning': <class 'FutureWarning'>, 'GeneratorExit': <class 'GeneratorExit'>, 'IOError': <class 'OSError'>, 'ImportError': <class 'ImportError'>, 'ImportWarning': <class 'ImportWarning'>, 'IndentationError': <class 'IndentationError'>, 'IndexError': <class 'IndexError'>, 'InterruptedError': <class 'InterruptedError'>, 'IsADirectoryError': <class 'IsADirectoryError'>, 'KeyError': <class 'KeyError'>, 'KeyboardInterrupt': <class 'KeyboardInterrupt'>, 'LookupError': <class 'LookupError'>, 'MemoryError': <class 'MemoryError'>, 'ModuleNotFoundError': <class 'ModuleNotFoundError'>, 'NameError': <class 'NameError'>, 'None': None, 'NotADirectoryError': <class 'NotADirectoryError'>, 'NotImplemented': NotImplemented, 'NotImplementedError': <class 'NotImplementedError'>, 'OSError': <class 'OSError'>, 'OverflowError': <class 'OverflowError'>, 'PendingDeprecationWarning': <class 'PendingDeprecationWarning'>, 'PermissionError': <class 'PermissionError'>, 'ProcessLookupError': <class 'ProcessLookupError'>, 'RecursionError': <class 'RecursionError'>, 'ReferenceError': <class 'ReferenceError'>, 'ResourceWarning': <class 'ResourceWarning'>, 'RuntimeError': <class 'RuntimeError'>, 'RuntimeWarning': <class 'RuntimeWarning'>, 'StopAsyncIteration': <class 'StopAsyncIteration'>, 'StopIteration': <class 'StopIteration'>, 'SyntaxError': <class 'SyntaxError'>, 'SyntaxWarning': <class 'SyntaxWarning'>, 'SystemError': <class 'SystemError'>, 'SystemExit': <class 'SystemExit'>, 'TabError': <class 'TabError'>, 'TimeoutError': <class 'TimeoutError'>, 'True': True, 'TypeError': <class 'TypeError'>, 'UnboundLocalError': <class 'UnboundLocalError'>, 'UnicodeDecodeError': <class 'UnicodeDecodeError'>, 'UnicodeEncodeError': <class 'UnicodeEncodeError'>, 'UnicodeError': <class 'UnicodeError'>, 'UnicodeTranslateError': <class 'UnicodeTranslateError'>, 'UnicodeWarning': <class 'UnicodeWarning'>, 'UserWarning': <class 'UserWarning'>, 'ValueError': <class 'ValueError'>, 'Warning': <class 'Warning'>, 'ZeroDivisionError': <class 'ZeroDivisionError'>, '__build_class__': <built-in function __build_class__>, '__debug__': True, '__doc__': "Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the `nil' object; Ellipsis represents `...' in slices.", '__import__': <built-in function __import__>, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__name__': 'builtins', '__package__': '', '__spec__': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>, origin='built-in'), 'abs': <built-in function abs>, 'aiter': <built-in function aiter>, 'all': <built-in function all>, 'anext': <built-in function anext>, 'any': <built-in function any>, 'ascii': <built-in function ascii>, 'bin': <built-in function bin>, 'bool': <class 'bool'>, 'breakpoint': <built-in function breakpoint>, 'bytearray': <class 'bytearray'>, 'bytes': <class 'bytes'>, 'callable': <built-in function callable>, 'chr': <built-in function chr>, 'classmethod': <class 'classmethod'>, 'compile': <built-in function compile>, 'complex': <class 'complex'>, 'copyright': Copyright (c) 2001-2023 Python Software Foundation. All Rights Reserved. Copyright (c) 2000 BeOpen.com. All Rights Reserved. Copyright (c) 1995-2001 Corporation for National Research Initiatives. All Rights Reserved. Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam. All Rights Reserved., 'credits': Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands for supporting Python development. See www.python.org for more information., 'delattr': <built-in function delattr>, 'dict': <class 'dict'>, 'dir': <built-in function dir>, 'divmod': <built-in function divmod>, 'enumerate': <class 'enumerate'>, 'eval': <built-in function eval>, 'exec': <built-in function exec>, 'execfile': <function execfile>, 'exit': Use exit() or Ctrl-D (i.e. EOF) to exit, 'filter': <class 'filter'>, 'float': <class 'float'>, 'format': <built-in function format>, 'frozenset': <class 'frozenset'>, 'getattr': <built-in function getattr>, 'globals': <built-in function globals>, 'hasattr': <built-in function hasattr>, 'hash': <built-in function hash>, 'help': Type help() for interactive help, or help(object) for help about object., 'hex': <built-in function hex>, 'id': <built-in function id>, 'input': <built-in function input>, 'int': <class 'int'>, 'isinstance': <built-in function isinstance>, 'issubclass': <built-in function issubclass>, 'iter': <built-in function iter>, 'len': <built-in function len>, 'license': Type license() to see the full license text, 'list': <class 'list'>, 'locals': <built-in function locals>, 'map': <class 'map'>, 'max': <built-in function max>, 'memoryview': <class 'memoryview'>, 'min': <built-in function min>, 'next': <built-in function next>, 'object': <class 'object'>, 'oct': <built-in function oct>, 'open': <built-in function open>, 'ord': <built-in function ord>, 'pow': <built-in function pow>, 'print': <built-in function print>, 'property': <class 'property'>, 'quit': Use quit() or Ctrl-D (i.e. EOF) to exit, 'range': <class 'range'>, 'repr': <built-in function repr>, 'reversed': <class 'reversed'>, 'round': <built-in function round>, 'runfile': <function runfile>, 'set': <class 'set'>, 'setattr': <built-in function setattr>, 'slice': <class 'slice'>, 'sorted': <built-in function sorted>, 'staticmethod': <class 'staticmethod'>, 'str': <class 'str'>, 'sum': <built-in function sum>, 'super': <class 'super'>, 'tuple': <class 'tuple'>, 'type': <class 'type'>, 'vars': <built-in function vars>, 'zip': <class 'zip'>}, '__cached__': '/home/docs/checkouts/readthedocs.org/user_builds/aiida-core/envs/latest/lib/python3.10/site-packages/aiida/manage/configuration/__pycache__/config.cpython-310.pyc', '__doc__': 'Module that defines the configuration file of an AiiDA instance and functions to create and load it.\n\nDespite the import of the annotations backport below which enables postponed type annotation evaluation as implemented\nwith PEP 563 (https://peps.python.org/pep-0563/), this is not compatible with ``pydantic`` for Python 3.9 and older (\nSee https://github.com/pydantic/pydantic/issues/2678 for details).\n', '__file__': '/home/docs/checkouts/readthedocs.org/user_builds/aiida-core/envs/latest/lib/python3.10/site-packages/aiida/manage/configuration/config.py', '__loader__': <pydantic._internal._model_construction._PydanticWeakRef object>, '__name__': 'aiida.manage.configuration.config', '__package__': 'aiida.manage.configuration', '__spec__': <pydantic._internal._model_construction._PydanticWeakRef object>, 'annotations': <pydantic._internal._model_construction._PydanticWeakRef object>, 'codecs': <pydantic._internal._model_construction._PydanticWeakRef object>, 'config': {'default_profile': 'readthedocs', 'profiles': {'readthedocs': {'process_control': {'backend': 'rabbitmq', 'config': {'broker_host': 'localhost', 'broker_password': 'guest', 'broker_port': 5672, 'broker_protocol': 'amqp', 'broker_username': 'guest', 'broker_virtual_host': ''}}, 'storage': {'backend': 'core.psql_dos', 'config': {'database_engine': 'postgresql_psycopg2', 'database_hostname': 'localhost', 'database_name': 'aiidadb', 'database_password': 'aiidadb', 'database_port': 5432, 'database_username': 'aiida', 'repository_uri': 'file:///dev/null'}}}}}, 'contextlib': <pydantic._internal._model_construction._PydanticWeakRef object>, 'field_serializer': <pydantic._internal._model_construction._PydanticWeakRef object>, 'field_validator': <pydantic._internal._model_construction._PydanticWeakRef object>, 'filepath': '/tmp/tmp5qm652st', 'get_option': <pydantic._internal._model_construction._PydanticWeakRef object>, 'get_option_names': <pydantic._internal._model_construction._PydanticWeakRef object>, 'io': <pydantic._internal._model_construction._PydanticWeakRef object>, 'json': <pydantic._internal._model_construction._PydanticWeakRef object>, 'os': <pydantic._internal._model_construction._PydanticWeakRef object>, 'parse_option': <pydantic._internal._model_construction._PydanticWeakRef object>, 'uuid': <pydantic._internal._model_construction._PydanticWeakRef object>}#
- __pydantic_serializer__: ClassVar[SchemaSerializer] = SchemaSerializer(serializer=Model( ModelSerializer { class: Py( 0x000055b671c32b80, ), serializer: Fields( GeneralFieldsSerializer { fields: { "options": SerField { key_py: Py( 0x00007fd7cfbd0cf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Model( ModelSerializer { class: Py( 0x000055b671c2e410, ), serializer: Fields( GeneralFieldsSerializer { fields: { "warnings__development_version": SerField { key_py: Py( 0x00007fd7cdd033c0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056dfe0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "caching__enabled_for": SerField { key_py: Py( 0x00007fd7cdd02fb0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cd5df300, ), ), serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), ), required: true, }, "daemon__default_workers": SerField { key_py: Py( 0x00007fd7cdd029c0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c0f0, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "transport__task_maximum_attempts": SerField { key_py: Py( 0x00007fd7cdcd6370, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c170, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "daemon__worker_process_slots": SerField { key_py: Py( 0x00007fd7cdd02a10, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7d9d0, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "logging__db_loglevel": SerField { key_py: Py( 0x00007fd7cdd02ba0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdea76f0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "caching__disabled_for": SerField { key_py: Py( 0x00007fd7cdd03000, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cd51a200, ), ), serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), ), required: true, }, "autofill__user__first_name": SerField { key_py: Py( 0x00007fd7cdd03280, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "rest_api__profile_switching": SerField { key_py: Py( 0x00007fd7cdd03370, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056e000, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "logging__plumpy_loglevel": SerField { key_py: Py( 0x00007fd7cdd02bf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "warnings__showdeprecations": SerField { key_py: Py( 0x00007fd7cdd02e20, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056dfe0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "rmq__task_timeout": SerField { key_py: Py( 0x00007fd7cdd02ec0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c210, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "db__batch_size": SerField { key_py: Py( 0x00007fd7cdcd3930, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdf63190, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "verdi__shell__auto_import": SerField { key_py: Py( 0x00007fd7cdd02ab0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfe442b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, "logging__alembic_loglevel": SerField { key_py: Py( 0x00007fd7cdd02ce0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__kiwipy_loglevel": SerField { key_py: Py( 0x00007fd7cdd02c40, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__sqlalchemy_loglevel": SerField { key_py: Py( 0x00007fd7cdd02d30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__paramiko_loglevel": SerField { key_py: Py( 0x00007fd7cdd02c90, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "autofill__user__email": SerField { key_py: Py( 0x00007fd7cdd03230, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "logging__circus_loglevel": SerField { key_py: Py( 0x00007fd7cdd02d80, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfb990b0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__aiopika_loglevel": SerField { key_py: Py( 0x00007fd7cdd02dd0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__verdi_loglevel": SerField { key_py: Py( 0x00007fd7cdd02b50, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdea76f0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "transport__task_retry_initial_interval": SerField { key_py: Py( 0x00007fd7cdcd6310, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c350, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "warnings__rabbitmq_version": SerField { key_py: Py( 0x00007fd7cdd02e70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056dfe0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "logging__aiida_loglevel": SerField { key_py: Py( 0x00007fd7cdd02b00, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdea76f0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "autofill__user__institution": SerField { key_py: Py( 0x00007fd7cdd03320, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "autofill__user__last_name": SerField { key_py: Py( 0x00007fd7cdd032d0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "runner__poll__interval": SerField { key_py: Py( 0x00007fd7cdd02970, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c850, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "daemon__timeout": SerField { key_py: Py( 0x00007fd7cdcd38f0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c110, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "storage__sandbox": SerField { key_py: Py( 0x00007fd7cdd02f10, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "caching__default_enabled": SerField { key_py: Py( 0x00007fd7cdd02f60, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056e000, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "daemon__recursion_limit": SerField { key_py: Py( 0x00007fd7cdd02a60, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdf624b0, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 32, }, ), has_extra: false, root_model: false, name: "GlobalOptionsSchema", }, ), }, ), }, ), ), required: true, }, "default_profile": SerField { key_py: Py( 0x00007fd7cdcd3170, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "CONFIG_VERSION": SerField { key_py: Py( 0x00007fd7cdcd3cb0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Model( ModelSerializer { class: Py( 0x000055b671c2b540, ), serializer: Fields( GeneralFieldsSerializer { fields: { "OLDEST_COMPATIBLE": SerField { key_py: Py( 0x00007fd7cdd028d0, ), alias: None, alias_py: None, serializer: Some( Int( IntSerializer, ), ), required: true, }, "CURRENT": SerField { key_py: Py( 0x00007fd7cdcd3830, ), alias: None, alias_py: None, serializer: Some( Int( IntSerializer, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "ConfigVersionSchema", }, ), }, ), }, ), ), required: true, }, "profiles": SerField { key_py: Py( 0x00007fd7ceb61cb0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Model( ModelSerializer { class: Py( 0x000055b671c31160, ), serializer: Fields( GeneralFieldsSerializer { fields: { "options": SerField { key_py: Py( 0x00007fd7cfbd0cf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d0582cc0, ), ), serializer: Nullable( NullableSerializer { serializer: Model( ModelSerializer { class: Py( 0x000055b671c2d110, ), serializer: Fields( GeneralFieldsSerializer { fields: { "logging__verdi_loglevel": SerField { key_py: Py( 0x00007fd7cdd02b50, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdea76f0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__aiopika_loglevel": SerField { key_py: Py( 0x00007fd7cdd02dd0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "daemon__default_workers": SerField { key_py: Py( 0x00007fd7cdd029c0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c0f0, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "runner__poll__interval": SerField { key_py: Py( 0x00007fd7cdd02970, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c850, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "logging__db_loglevel": SerField { key_py: Py( 0x00007fd7cdd02ba0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdea76f0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__kiwipy_loglevel": SerField { key_py: Py( 0x00007fd7cdd02c40, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "logging__paramiko_loglevel": SerField { key_py: Py( 0x00007fd7cdd02c90, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "db__batch_size": SerField { key_py: Py( 0x00007fd7cdcd3930, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdf63190, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "logging__circus_loglevel": SerField { key_py: Py( 0x00007fd7cdd02d80, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfb990b0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "warnings__rabbitmq_version": SerField { key_py: Py( 0x00007fd7cdd02e70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7d056dfe0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "transport__task_maximum_attempts": SerField { key_py: Py( 0x00007fd7cdcd6370, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c170, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "logging__plumpy_loglevel": SerField { key_py: Py( 0x00007fd7cdd02bf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "verdi__shell__auto_import": SerField { key_py: Py( 0x00007fd7cdd02ab0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfe442b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, "daemon__recursion_limit": SerField { key_py: Py( 0x00007fd7cdd02a60, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cdf624b0, ), ), serializer: Int( IntSerializer, ), }, ), ), required: true, }, "logging__alembic_loglevel": SerField { key_py: Py( 0x00007fd7cdd02ce0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cf470b30, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "aiida.common.log.LogLevels:94242080134800", }, ), }, ), ), required: true, }, "rmq__task_timeout": SerField { key_py: Py( 0x00007fd7cdd02ec0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fd7cfd7c210, ),