{"id":26910,"library":"downstream","title":"downstream","description":"downstream provides efficient, constant-space algorithms for stream curation, including deduplication, filtering, and counting. Current version 1.22.0 supports Python >=3.10. Releases are regular, with breaking changes documented in changelog.","status":"active","version":"1.22.0","language":"python","source_language":"en","source_url":"https://github.com/your-repo/downstream","tags":["streaming","bloom-filter","count-min-sketch","deduplication","probabilistic-data-structures"],"install":[{"cmd":"pip install downstream","lang":"bash","label":"Install downstream"}],"dependencies":[],"imports":[{"wrong":"from downstream import BloomFilter","symbol":"dataframe","correct":"from downstream import dataframe"},{"symbol":"dstream","correct":"from downstream import dstream"},{"symbol":"dsurf","correct":"from downstream import dsurf"}],"quickstart":{"code":"from downstream import BloomFilter\nbf = BloomFilter(capacity=1000, error_rate=0.01)\nbf.add('item1')\nprint('item1' in bf)  # True","lang":"python","description":"Create a Bloom filter, add an item, and test membership."},"warnings":[{"fix":"Use keyword arguments: BloomFilter(capacity=..., error_rate=...)","message":"In v1.0, BloomFilter constructor changed from (size, num_hashes) to (capacity, error_rate). Old code using positional arguments will break.","severity":"breaking","affected_versions":">=1.0"},{"fix":"Use CountingBloomFilter if deletion is needed.","message":"BloomFilter does not support deletion. Attempting to remove items silently does nothing.","severity":"gotcha","affected_versions":"all"},{"fix":"Import utilities directly from downstream: e.g. from downstream import hash_functions","message":"The `downstream.utils` module is deprecated since v1.15 and will be removed in v2.0.","severity":"deprecated","affected_versions":">=1.15, <2.0"}],"env_vars":null,"search_vec":"'1.22.0':19 '3.10':22 'algorithm':8 'bloom':34 'bloom-filt':33 'break':27 'chang':28 'changelog':31 'constant':6 'constant-spac':5 'count':16,37 'count-min-sketch':36 'curat':11 'current':17 'data':43 'dedupl':13,40 'document':29 'downstream':1,2 'effici':4 'filter':14,35 'includ':12 'min':38 'probabilist':42 'probabilistic-data-structur':41 'provid':3 'python':21 'regular':25 'releas':23 'sketch':39 'space':7 'stream':10,32 'structur':44 'support':20 'version':18","created_at":"2026-05-01T17:43:30.655146+00:00","updated_at":"2026-05-01T17:43:30.655146+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/mmore500/downstream.git","docs":null,"changelog":null,"pypi":"https://pypi.org/project/downstream/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","http-networking","web-framework"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-08-02","install_tag":null}}