Skip to content
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

README Cleanup: Simplify mandatory table #94

Merged
merged 6 commits into from
Mar 22, 2024

Conversation

AngusP
Copy link
Contributor

@AngusP AngusP commented Mar 8, 2024

  • For mandatory NUTS, just say all for wallet and mint support to reduce duplication
  • Move the list of Wallets and Mints that support Mandatory NUTS to after the table, to make the full set of options clearer (also sort alpha)
  • Markdown table formatting fixes, fix broken lnbits link
  • mandatory NUT table can be human-readable

README.md Outdated Show resolved Hide resolved
README.md Outdated
Comment on lines 42 to 47
| [07][07] | Token state check | [Nutshell][py], [Feni][feni], [Moksha][cashume], [Nutstash][ns], [cashu-ts][ts], [cashu-crab][cashu-crab] | [Nutshell][py], [Feni][feni], [LNbits], [Moksha][moksha], [cashu-rs-mint][cashu-rs-mint] |
| [08][08] | Overpaid Lightning fees | [Nutshell][py], [Feni][feni], [Moksha][cashume], [Nutstash][ns], [cashu-ts][ts], [cashu-crab][cashu-crab] | [Nutshell][py], [LNbits], [Moksha][moksha], [cashu-rs-mint][cashu-rs-mint] |
| [09][09] | Deterministic backup and restore | - | -
| [10][10] | Spending conditions | [Nutshell][py] | [Nutshell][py]
| [11][11] | Pay-To-Pubkey (P2PK) | [Nutshell][py] | [Nutshell][py]
| [12][12] | DLEQ proofs | [Nutshell][py] | [Nutshell][py]
| [10][10] | Spending conditions | [Nutshell][py] | [Nutshell][py] |
| [11][11] | Pay-To-Pubkey (P2PK) | [Nutshell][py] | [Nutshell][py] |
| [12][12] | DLEQ proofs | [Nutshell][py] | [Nutshell][py] |
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Just adds missing trailing |s

Copy link
Contributor

@callebtc callebtc left a comment

Choose a reason for hiding this comment

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

Chef's kiss!

Could you move the wallet and mint list below all the tables so that both tables are side by side and not interrupted by a long list?

@thunderbiscuit
Copy link
Collaborator

thunderbiscuit commented Mar 19, 2024

As is, it's a NACK for me. I think the information about which wallets and mints support which NUTs is important, but does not belong in the spec (see #81 for my full opinion on this). As the project grows and more and more mints and wallet libraries are created, tracking all of them and deciding whether they are up to date enough to be part of the table is a fool's errand IMO (example: Feni has not seen a commit in 6 months and is completely out of date with the spec).

But a simplification of the readme is a great idea. I like the break down into 2 tables, one mandatory and one optional. The cleanest way to move forward IMO is simply with the following, simplified table format:

| NUT #    | Description                       |
|----------|-----------------------------------|
| [00][00] | Cryptography and Models           |
| [01][01] | Mint public keys                  |
| [02][02] | Keysets and keyset IDs            |
| [03][03] | Swapping tokens                   |
| [04][04] | Minting tokens                    | 
| [05][05] | Melting tokens                    |

Just my 2 sats.

* For **mandatory** NUTS, just say `all` for wallet and mint support to reduce duplication
* Move the list of Wallets and Mints that support Mandatory NUTS to after the table, to make the full set of options clearer (also sort alpha)
* Markdown table formatting fixes, fix broken lnbits link
@AngusP AngusP force-pushed the readme-mandatory-compat-cleanup branch from 4d28d3d to bbafb3b Compare March 19, 2024 15:11
@AngusP
Copy link
Contributor Author

AngusP commented Mar 19, 2024

I've simplified the mandatory table -- given those NUTs are mandatory I agree it doesn't make that much sense listing which implementations have implemented.

As the project grows and more and more mints and wallet libraries are created, tracking all of them and deciding whether they are up to date enough to be part of the table is a fool's errand IMO

That makes sense, though can be one of those things that we stop doing when it does become a faff to keep up-to-date. Early on, it's helpful to have as otherwise discovery can be hard

@AngusP AngusP requested a review from callebtc March 19, 2024 15:14
@thunderbiscuit
Copy link
Collaborator

thunderbiscuit commented Mar 21, 2024

That makes sense, though can be one of those things that we stop doing when it does become a faff to keep up-to-date. Early on, it's helpful to have as otherwise discovery can be hard.

Yeah I see your point. Discovery is very important (which is why I like the awesome list, and main website, and think we should use/promote them more). I do think we're past the early stages tough, and the way I see it, this page is now doing counter-discovery: there are a lot of cashu wallets/libraries/mints that are not in this list (and Feni which should be removed). If someone thinks of this list as some sort of canonical list coming from the devs of Cashu (what does that even mean? this repo is a spec!), they'll miss out on a lot. Again just my opinion, but this is I think creating more confusion and problems than it's worth, and will have to be removed no matter what at some point in the future. My opinion is, do it now. A good addition could be a sentence at the end there pointing to resources that tell people where to find that info. Maybe something like You can find a list of libraries that implement the various NUTs in this spec at [this link] and [this link].

(btw I'm not trying to be a hard-ass, if others think this is ready to merge by all means disregard my comment! Just figured I'd give my 2 cents).

@callebtc
Copy link
Contributor

Thank you this is much better! I agree, will remove Feni from the list, I think the dev is no contributing to GoNuts, which I added here.

@callebtc callebtc merged commit 39b8b9a into cashubtc:main Mar 22, 2024
@AngusP AngusP deleted the readme-mandatory-compat-cleanup branch March 22, 2024 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants