datalad_core.services

Runtime services

Functionality in this module is unconditionally imported whenever datalad-core is used. It implemented central services available to all library users, and the library itself.

Global feature registry

Global FeatureRegistry with standard detectors

This instance is preloaded with all detectors defined in std_feature_detectors.

>>> import datalad_core
>>> datalad_core.features['git:version'] > '0.0.0'
True

Additional features and associated detectors can be registered at runtime.

It is possible to overwrite existing feature registrations. However, this can lead to complications with respect to evaluation timing and caching. It is advisable to use unique feature names.

API

FeatureRegistry()

Facility for deferred determination of named properties

std_feature_detectors

Library of built-in feature detectors