CrayLabs / SmartRedis

SmartSim Infrastructure Library Clients.
BSD 2-Clause "Simplified" License
54 stars 25 forks source link

Enable putting bytes into the database via C++ and Python #521

Closed mellis13 closed 3 days ago

mellis13 commented 1 week ago

This PR adds the ability to put raw byte strings into the database. This PR covers the C++ and Python clients and Fortran and C clients will be addressed in a follow-up PR.

codecov[bot] commented 1 week ago

Codecov Report

Attention: Patch coverage is 55.76923% with 92 lines in your changes missing coverage. Please review.

Project coverage is 57.58%. Comparing base (4937fbd) to head (aae3968). Report is 17 commits behind head on develop.

Files with missing lines Patch % Lines
tests/cpp/unit-tests/test_client.cpp 0.00% 42 Missing :warning:
tests/cpp/unit-tests/test_client_prefixing.cpp 0.00% 24 Missing :warning:
src/python/src/pyclient.cpp 0.00% 12 Missing :warning:
src/python/bindings/bind.cpp 0.00% 6 Missing :warning:
src/cpp/client.cpp 92.06% 5 Missing :warning:
src/python/module/smartredis/client.py 92.85% 2 Missing :warning:
src/python/module/smartredis/error.py 0.00% 1 Missing :warning:
Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521/graphs/tree.svg?width=650&height=150&src=pr&token=XSS8CCJ2KR&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs)](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs) ```diff @@ Coverage Diff @@ ## develop #521 +/- ## ============================================ - Coverage 95.92% 57.58% -38.34% ============================================ Files 10 147 +137 Lines 884 11907 +11023 Branches 0 1138 +1138 ============================================ + Hits 848 6857 +6009 - Misses 36 4899 +4863 - Partials 0 151 +151 ``` | [Files with missing lines](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs) | Coverage Δ | | |---|---|---| | [include/client.h](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=include%2Fclient.h&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-aW5jbHVkZS9jbGllbnQuaA==) | `76.92% <ø> (ø)` | | | [include/redisserver.h](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=include%2Fredisserver.h&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-aW5jbHVkZS9yZWRpc3NlcnZlci5o) | `60.00% <ø> (ø)` | | | [src/cpp/redis.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fcpp%2Fredis.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL2NwcC9yZWRpcy5jcHA=) | `55.60% <100.00%> (ø)` | | | [src/cpp/rediscluster.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fcpp%2Frediscluster.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL2NwcC9yZWRpc2NsdXN0ZXIuY3Bw) | `66.75% <100.00%> (ø)` | | | [src/python/module/smartredis/error.py](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fpython%2Fmodule%2Fsmartredis%2Ferror.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL3B5dGhvbi9tb2R1bGUvc21hcnRyZWRpcy9lcnJvci5weQ==) | `95.45% <0.00%> (ø)` | | | [src/python/module/smartredis/client.py](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fpython%2Fmodule%2Fsmartredis%2Fclient.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL3B5dGhvbi9tb2R1bGUvc21hcnRyZWRpcy9jbGllbnQucHk=) | `97.28% <92.85%> (-0.28%)` | :arrow_down: | | [src/cpp/client.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fcpp%2Fclient.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL2NwcC9jbGllbnQuY3Bw) | `88.50% <92.06%> (ø)` | | | [src/python/bindings/bind.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fpython%2Fbindings%2Fbind.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL3B5dGhvbi9iaW5kaW5ncy9iaW5kLmNwcA==) | `0.00% <0.00%> (ø)` | | | [src/python/src/pyclient.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=src%2Fpython%2Fsrc%2Fpyclient.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-c3JjL3B5dGhvbi9zcmMvcHljbGllbnQuY3Bw) | `0.00% <0.00%> (ø)` | | | [tests/cpp/unit-tests/test\_client\_prefixing.cpp](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree&filepath=tests%2Fcpp%2Funit-tests%2Ftest_client_prefixing.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs#diff-dGVzdHMvY3BwL3VuaXQtdGVzdHMvdGVzdF9jbGllbnRfcHJlZml4aW5nLmNwcA==) | `0.00% <0.00%> (ø)` | | | ... and [1 more](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs) | | ... and [128 files with indirect coverage changes](https://app.codecov.io/gh/CrayLabs/SmartRedis/pull/521/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CrayLabs)