Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Adding KeySelectors to get-range #30

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

FiV0
Copy link

@FiV0 FiV0 commented Dec 16, 2022

  • get-range also supports limit and skip now.
  • bumping the deps to 6.3.23
  • adding deps.edn to support git deps
    -a couple of tweaks to better support raw byte keys

So here the first PR for the issues raised in #29. It essentially adds KeySelectors and limit/skip options to get-range.
I am not sure this is is the best approach as this immense overloading of get-range makes the code a bit messy. So maybe worth thinking if a second get-range function would be a better option.

Will follow up with a second PR concerning the ordering returned by get-range.

- `get-range` also supports limit and skip now.
- bumping the deps to 6.3.23
- adding deps.edn to support git deps
- a couple of tweaks to better support raw byte keys
@FiV0
Copy link
Author

FiV0 commented Dec 16, 2022

Fixes #28.

Copy link
Owner

@vedang vedang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are right in that this does complicate the get-range function tremendously.

The code is also a bit difficult to understand, I need to read it again carefully.

I've given a cursory read to the code and made some comments about naming and PR structure. Please make these changes, I will read through this PR and test it in the next week. I will come back with some more comments then.

deps.edn Outdated
{:dev
{:extra-paths ["dev"]
:extra-deps {org.clojure/clojure {:mvn/version "1.11.1"}
com.lambdaisland/classpath {:mvn/version "0.0.27"}}}
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why are "dev" and lambdaisland/classpath needed?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed lambdaisland/classpath. I you want me to remove :dev completely I can also do that, it's just nice for people who might want to use the clojure cli.

project.clj Show resolved Hide resolved
src/me/vedang/clj_fdb/core.clj Outdated Show resolved Hide resolved
src/me/vedang/clj_fdb/subspace/subspace.clj Outdated Show resolved Hide resolved
test/me/vedang/clj_fdb/core_test.clj Outdated Show resolved Hide resolved
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants