macaroon icon indicating copy to clipboard operation
macaroon copied to clipboard

Next steps for maintenance / development of this crate πŸš€

Open dunxen opened this issue 4 years ago β€’ 10 comments

This is a tracking issue for discussion around the future direction of this crate. πŸ˜„

The original crate has been yanked and the macaroon name reserved, but should have its ownership transferred to a joint / lead maintainer to manage on crates.io. Not sure what the best setup for that is.

I think there's no pressure to get a first crate version published until we've got some new direction for the API going forward. We can instead "release" as normal pre-releases until then.

Some discussion points from the original issue by @bnewbold:

Under the context that there seem to be very few or no crates depending on this one right now, and it's still at version 0.1.1 > (so breaking updates might be feasible), my priorities would be:

  • update for contemporary Rust (warnings, etc); probably require either 1.26+ or Rust 2018
  • vastly expanded test suite, including test vectors from other implementations
  • review API for best practices (eg, naming)
  • clippy + rustfmt clean
  • informal code quality and security review
  • feature completeness with upstream libmacaroons
  • meeting any requirements and rust best practices to get to a "1.0" API
  • meeting any requirements for inclusion in Debian and other OS-level package managers
  • documentation and examples

Non-priorities (but maybe interesting to others) would be:

  • helpers for verifying caveats (beyond the existing "specific" and "general")
  • no-std support
  • built-in "bakery" API to manage root keys (a la a popular golang library)
  • WASM
  • exposing a C ABI

dunxen avatar Nov 16 '20 18:11 dunxen

Thanks for copying these over!

I think expanded test coverage is the highest priority for me, particularly to ensure interoperability with other implementations.

bnewbold avatar Nov 17 '20 00:11 bnewbold

Could https://crates.io/crates/macaroon point to this repo?

bbigras avatar May 20 '21 21:05 bbigras

@bbigras We'll just need the ownership of that crate transferred from @jacklund. I'll send an email to him regarding this.

dunxen avatar May 23 '21 16:05 dunxen

I added @duncandean as owner. I tried to add @bnewbold, but for some reason it couldn't find their username.

jacklund avatar May 24 '21 01:05 jacklund

Thanks! I think we'll release a new version that will probably have some breaking changes to the API. We'll need to just discuss what we'd like in that release.

From what's mentioned above, I think a review of the API for best practices and expanding the test suite should be priorities for a 0.2 release. Also a commitment to supporting certain Rust stable minimum version (1.47+ was mentioned in #41 but could be reconsidered now if there are certain features we feel are beneficial).

@bnewbold, I can add you as a crate owner if you provide a username for crates.io :)

dunxen avatar May 24 '21 07:05 dunxen

Username should match my github username: https://crates.io/users/bnewbold

I just verified that I could still log in to crates.io and don't see any "Owner Invites". You can email me at my github username, domain robocracy.org to debug one-to-one.

bnewbold avatar May 25 '21 21:05 bnewbold

Any progress on pointing https://crates.io/crates/macaroon to this repo?

bbigras avatar Sep 16 '21 20:09 bbigras

I think we wanted to cover some ground here first on API improvements. But we can publish in its current state too just so that it’s back up.

Will do that today.

On Thu, 16 Sep 2021 at 22:41, Bruno Bigras @.***> wrote:

Any progress on pointing https://crates.io/crates/macaroon to this repo?

β€” You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/macaroon-rs/macaroon/issues/40#issuecomment-921230171, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXOBFIDGUAUFGLX3JUEJETUCJJBDANCNFSM4TXP2QRQ .

--

__________________________________________________ Duncan Dean Centurion, South Africa

https://github.com/duncandean https://gitlab.com/duncandean https://twitter.com/dunxen https://www.linkedin.com/in/duncan-dean/ https://dunc.dev

dunxen avatar Sep 17 '21 05:09 dunxen

Thanks. I'm waiting for this to add macaroon to a project.

bbigras avatar Sep 21 '21 14:09 bbigras

Meant to post that the crate name now points to this project again.

dunxen avatar Feb 19 '22 06:02 dunxen