{"id":23722,"library":"fds-sdk-utils","title":"FactSet SDK Utilities","description":"Utilities for interacting with FactSet APIs. Version 2.1.2 supports Python >=3.8, <4.0. Provides caching, retry, logging, and auth helpers for the FactSet SDK ecosystem. Released monthly on PyPI.","status":"active","version":"2.1.2","language":"python","source_language":"en","source_url":"https://github.com/factset/fds-sdk-utils-python","tags":["factset","sdk","utilities","api"],"install":[{"cmd":"pip install fds-sdk-utils","lang":"bash","label":"Standard install via pip"}],"dependencies":[{"reason":"HTTP client for API calls","package":"requests","optional":false},{"reason":"Date/time parsing","package":"python-dateutil","optional":false}],"imports":[{"note":"The package name on PyPI is fds-sdk-utils, but the import path is fds.utils.","wrong":"from fds_sdk_utils import RetryConfig","symbol":"factset.utils","correct":"from fds.utils import RetryConfig"}],"quickstart":{"code":"from fds.utils import RetryConfig\n\nretry = RetryConfig(max_retries=3, backoff_factor=0.5)\nprint(retry)","lang":"python","description":"Basic usage of RetryConfig utility."},"warnings":[{"fix":"Change imports to `from fds.utils import ...`.","message":"In v2.0, the import path changed from `fds_sdk_utils` to `fds.utils`. Old imports will break.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Use `from fds.utils.auth import FDSAuth` instead.","message":"The `FactSetAuth` class has been deprecated in favor of `FDSAuth` in newer versions (v2.1+).","severity":"deprecated","affected_versions":">=2.1.0"},{"fix":"Pass a cache instance to the utility function, e.g., `from fds.utils.cache import MemoryCache`.","message":"Caching is disabled by default; you must explicitly configure a cache backend. Without it, repeated requests are not cached.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"import from `fds.utils` instead.","cause":"Package installed but the import path changed in v2.0.","error":"ModuleNotFoundError: No module named 'fds_sdk_utils'"},{"fix":"Run `pip install --upgrade fds-sdk-utils` and ensure you use `from fds.utils import ...`.","cause":"Missing subpackage import, usually because the package was installed but the subpackage wasn't imported.","error":"AttributeError: module 'fds' has no attribute 'utils'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}