-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Publishing nitrocli-ext #165
Comments
I try to go the minimal route first and see where it fails us (given that we are talking functionality that we need to support long term). My thinking was that it's an implementation detail, not a means for third-party extensions to be written. As such, I'd not want to publish it to Extensions can do what they want with the interface we have defined, and that interface is currently comprised of a few environment variables, including the path to So to answer your question:
It's published in the form of a source code archive on GitHub, comprising the contents of the repository when a release is cut. |
My problem with this is that it effectively discourages writing extensions. We don’t have to support |
I don't think of it this way. For one, writing an extension is driven by a need: if someone wants to interface with a Nitrokey for a specific purpose then this can be one way to go. Whether there is a crate that takes up a small part of the work should be secondary and an implementation detail. The way I see it, we have defined the interface we want extensions to use so we should make them stick to it. If we now say that it's unlikely that people will actually use it because it's too cumbersome to do so, then perhaps the interface is bad/too low level/whatever the reason. In any case, given that it seems that over in #166 we determined a need for publishing extensions we would also need to publish |
I don’t really get this point. Publishing Of course they could implement it from scratch, but why not provide an easy interface if we already did the work to implement it? That does not mean that the underlying interface is bad. |
Yeah, but it would mean that in addition to the "lower" specification we already have we now have to support yet another one (in the form of code) in a stable API kind of sense. I'd want to keep that API surface as small as possible.
For me it mostly ties into the above: the need to maintain a stable API, but it appears we have differing views in this regard. Anyway, I think we can safely close this issue with #169 merged. I suggest we create a new one once we feel more confident about the Rust extension interface and have ironed out the various versioning/compatibility challenges that it introduces on even core extensions that we ship. |
How should we publish
nitrocli-ext
? From my understanding, it is intended to be used both by our core extensions and by third-party extensions. Therefore it should be published on crates.io.The text was updated successfully, but these errors were encountered: