{"id":23859,"library":"hotglue-singer-sdk","title":"Hotglue Singer SDK","description":"A framework for building Singer taps and targets, maintained by Hotglue. Current version 1.0.29, supports Python 3.7.1 to <3.11. This SDK wraps the singer-python library with additional utilities for configuration, state management, and common tap/target patterns. Release cadence is irregular.","status":"active","version":"1.0.29","language":"python","source_language":"en","source_url":"https://github.com/hotglue/hotgluesingersdk","tags":["singer","etl","tap","target"],"install":[{"cmd":"pip install hotglue-singer-sdk","lang":"bash","label":"Install via pip"}],"dependencies":[{"reason":"Underlying Singer tap/target library","package":"singer-python","optional":false},{"reason":"Often used in tap implementations","package":"requests","optional":true}],"imports":[{"note":"Importing just 'singer' gets the singer-python library, not the hotglue SDK","wrong":"import singer","symbol":"singer","correct":"from hotglue_singer_sdk import SingerTap, SingerTarget"}],"quickstart":{"code":"from hotglue_singer_sdk import SingerTap, SingerTarget\n\nclass MyTap(SingerTap):\n    name = \"my_tap\"\n    def discover(self, config):\n        return [{\"stream\": \"users\", \"schema\": {\"type\": \"object\"}}]\n    def sync(self, config, state, stream):\n        yield {\"type\": \"RECORD\", \"stream\": stream, \"record\": {}}\n\nif __name__ == \"__main__\":\n    MyTap().run()","lang":"python","description":"Minimal Singer tap using the hotglue SDK."},"warnings":[{"fix":"Use Python 3.7.1–3.10.","message":"Python 3.11 is not supported (requires <3.11). Python 3.12+ will fail.","severity":"breaking","affected_versions":">=1.0.0,<1.1.0"},{"fix":"Evaluate migration to Meltano SDK: https://github.com/MeltanoLabs/sdk","message":"The SDK is no longer actively maintained by Hotglue, consider migrating to Meltano SDK or singer-sdk.","severity":"deprecated","affected_versions":"all"},{"fix":"Use 'from hotglue_singer_sdk import ...'","message":"The library is installed as 'hotglue-singer-sdk' but import path uses underscores: 'hotglue_singer_sdk'.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'1.0.29':17 '3.11':22 '3.7.1':20 'addit':32 'build':7 'cadenc':43 'common':39 'configur':35 'current':15 'etl':47 'framework':5 'hotglu':1,14 'irregular':45 'librari':30 'maintain':12 'manag':37 'pattern':41 'python':19,29 'releas':42 'sdk':3,24 'singer':2,8,28,46 'singer-python':27 'state':36 'support':18 'tap':9,48 'tap/target':40 'target':11,49 'util':33 'version':16 'wrap':25","created_at":"2026-05-01T08:10:00.792142+00:00","updated_at":"2026-05-01T08:10:00.792142+00:00","problems":{"verify_error":"× Failed to build `pendulum==2.1.2`\n  ├─▶ The build backend returned an error\n  ╰─▶ Call to `poetry.core.masonry.api.build_wheel` failed (exit status: 1)\n\n      [stderr]\n      The \"poetry.dev-dependencies\" section is deprecated and will be removed\n      in a future version. Use \"poetry.group.dev.dep"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.0.36","cli_name":"","cli_version":null,"type":"library","homepage":"https://hotglue.com","github":"https://github.com/hotglue/hotgluesingersdk","docs":"https://hotglue.com","changelog":null,"pypi":"https://pypi.org/project/hotglue-singer-sdk/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"install_fail","verified_at":"2026-06-29","last_verified":"2026-06-29","next_check":"2026-07-06","install_tag":null}}