ANN: NimDBX, a super-fast persistent key-value store

2021-12-10 Thread cmc
This is absolutely amazing stuff. I was using lmdb and it was ok, but the Nim layer on NimDBX is just beautiful. Proper database as easy to use as the filesystem... finally!

ANN: NimDBX, a super-fast persistent key-value store

2020-12-05 Thread snej
nimdbx is [in the Nimble directory now](https://nimble.directory/pkg/nimdbx), so if you’ve got keys you want to value, you can install it easily now. Although the Nimble page says its install is failing: `/tmp/nimble_21298/githubcom_snejnimdbx/nim.cfg(2, 3) Error: 'none', 'boehm' or 'refc' expe

ANN: NimDBX, a super-fast persistent key-value store

2020-11-20 Thread elcritch
Looks like a handy library, thanks! Sometimes it's handy to have a good KV store around.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-20 Thread snej
> the nimdbx readme seems to have replaced the concise install info with a link > to Nimterop The install actually got much easier — you should now be able to just check out or download the repo, then type “nimble test” and it builds and self-tests. Nimterop is just behind-the-scenes infrastruc

ANN: NimDBX, a super-fast persistent key-value store

2020-11-18 Thread Araq
> Well, Nimterop has the advantage of being automatic: if some functions are > added in the header, it will be easy to keep it up to date And it has the disadvantage that you cannot ship the Nim code as it's OS and CPU specific. So what if functions were added to the header, who says that you n

ANN: NimDBX, a super-fast persistent key-value store

2020-11-18 Thread ITwrx
For some reason this forum didn't notify me of your reply. That's great! I hope you'll consider documenting install and usage with us poor souls coming from high level languages, frameworks and ORMs in mind. :) I, for one, like the Arch wiki style: short code examples that show all the necessar

ANN: NimDBX, a super-fast persistent key-value store

2020-11-18 Thread snej
My wrapper was pretty incomplete, probably less than half of the C API. As I expand my library's coverage, it’ll be easier since I now have a complete wrapper.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-18 Thread andrea
Well, Nimterop has the advantage of being automatic: if some functions are added in the header, it will be easy to keep it up to date

ANN: NimDBX, a super-fast persistent key-value store

2020-11-18 Thread Araq
> Also using Nimterop to generate a Nim wrapper of the C header, instead of my > hand-written one. Er, please keep the hand-written one... :-( IMO Nimterop is for when you don't have the time to hand-craft a wrapper.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-17 Thread snej
New improvements: * Now uses Nimterop to build libmdbx and statically link it, automatically. * Also using Nimterop to generate a Nim wrapper of the C header, instead of my hand-written one. * Added subscript operators on CollectionShortcut as a convenience for creating Cursors.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-15 Thread snej
I’ve got some C++ code that extends libmdbx further, adding value properties (JSON-like), indexes and querying. But I’m trying to wean myself off C++, and NimDBX is a first step.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-15 Thread snej
Yeah, the cursor and put modes in all those dbm-derived APIs are very confusing! I plan to add more idiomatic sugar to the Cursor class to make it easier to use.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-15 Thread ITwrx
This is great. I was trying to use nim-lmdb, but couldn't figure out how to use the cursor. I'm looking forward to using this to remove the db query caching code and db server dependency required with my current web stack, as well as having the performance improvement. These types of "building b

ANN: NimDBX, a super-fast persistent key-value store

2020-11-15 Thread jasonfi
Good idea. I was writing a key-value DB in C++ before I knew about Nim. I was also gradually adding features to add a relational model. I spent a lot of time tracking down memory bugs, so Nim is the perfect replacement.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-13 Thread slonik_az
+1 to your code. I also like your prose.

ANN: NimDBX, a super-fast persistent key-value store

2020-11-13 Thread jbcomps
Dude! You're on fire!!

ANN: NimDBX, a super-fast persistent key-value store

2020-11-13 Thread snej
I've written a Nim library around libmdbx, a super-fast key-value store. I call it [NimDBX](https://github.com/snej/nimdbx). It's still early in development, but it's passed a handful of unit tests so I think it's ready to show off :) > NimDBX just maps arbitrary keys to values, in multiple name