Skip to content

Missing features / contributions welcome? #13

@EamonNerbonne

Description

@EamonNerbonne

I noticed that this library and the related https://github.com/skbkontur/ZstdNet/tree/master/ZstdNet have only partially overlapping sets of functionality.

Are you interested in external contributions to fill out the gaps; and if so, how do you want those?

I could think of

  • adding API surface area corresponding to ZDICT_trainFromBuffer (this would be hugely useful to me, but may require a different compilation of libzstd.dll, since the prebundled release at https://github.com/facebook/zstd/releases aren't compiled with optional dictBuilder package.
  • adding API more suitable for (de)compressing small things; i.e. using Span<T> instead of Stream<T>, at least, under the presumption that benchmarks show this amounts to any kind of meaningful perf win.
  • perhaps there are other features the underlying C api that might be useful and simple enough to expose?
  • a little more tenuously, splitting the library into an as-thin-as-possible safe wrapper around the native library, and a wrapper that converts that into more conventional .net apis (akin to sqlitepcl.raw) - the advantage of that being that the "nice" managed wrapper need not evolve at quite the same rate as the underlying native library, and also, it's easier to expose all the crazy bits with a raw library without needing to decided on a clean api for them (i.e. this could be a way to include a dictbuilder simply), and conversely to allow experimenting with clean managed apis without polluting a library you want to keep stable and clean.

TL;DR are you interested in contributions, and if so how/what kind/etc?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions