• 1 Post
  • 9 Comments
Joined 1 year ago
cake
Cake day: July 20th, 2023

help-circle
  • I maintain a long-term Rust + Node.js project, and the Node side is the painful one.

    Node makes backwards-incompatible changes, and doesn’t have anything like the editions to keep old packages working. I can end up with some dependencies working only up to Node vX, and some other deps needing at least Node v(X+1).






  • I prefer data as is rather than having to double guess every search result

    What’s the bad scenario you’re worried about here? What type of data you’re specifically worried about? Do you expect me to maliciously manipulate the data, or is even well-intentioned curation and use of heuristics somehow not acceptable?

    My view on data cleanup is probably very different than other people’s, because I’ve spent a lot (likely too much) time with the crates’ data. The pure unadulterated source data is… bad. It’s very sparse (most crates don’t fill it in). It’s full of outdated information (set once and forgotten, wrong for forks). Some crates-io category slugs are pretty misleading, so tons of crates are miscategorized by their own authors: parsing is not for file parsers, database is not for databases. accessibility …I can’t even. Who put ogg parsers, gRPC, garrysmod, RFID readers in there?

    There are tons of name-squatted crates, ferris guessing games, or just people’s baby steps in Rust. If you search on crates.io you often get the pure data of someone publishing a crate years ago and forgetting about it. This is pure, this is ranked objectively, this is curated and subjective.

    crates-io shows you plainly only the license of the crate you’re looking at. lib.rs goes further and checks if the crate has any dependencies which are GPL, because if a crate says it’s MIT but has GPL deps, it actually is GPL.

    crates-io shows you repository URL exactly as-is specified in the metadata, which could be inaccurate (in case of forks) or outright fake (someone else’s repo). lib.rs checks if the repository URL actually contains the crate or has the same owner as the crate, and will add a link to the true source code if the repo url is suspicious.

    crates-io shows owners’ names from the free-form name field, so somebody malicious could pretend to be a well-known trusted user. lib.rs only allows display names for established/reputable accounts, and uses login name for new/untrusted accounts.



  • kornel@lemmyrs.orgtoRust Lang@lemmyrs.orgLibs.rs is now closed source
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    1
    ·
    edit-2
    1 year ago

    The context here is that it was after I had a heated megathread in the bugtracker where multiple people were defending cryptocurrencies on their merits as money, decentralization tool, or an ideal to aspire to.

    Burntsushi’s objection was different form these, in a subtle way, and I needed more explanation to understand the difference. His phrasing with “sneering” — to me — was not clear (I understood it as “don’t sneer at cryptocurrencies, because they don’t deserve to be sneered at” rather than “cryptocurrencies are bullshit, but you can’t say it so directly and rudely”).

    Additionally, I did not want to invite another bugtracker megathread about cryptocurrencies, which is why I tested his patience asking for a statement, rather than merely linking to the bugtracker like he asked. I see it as an ask, perhaps negotiation. I don’t think that exchange deserves to be summed up as “crap”.

    Anyway, I’m probably testing your patience too, so have a nice day!


  • (you’re replying to the guy who runs lib.rs and responded to burntshushi in that thread)

    The initial request was just a question about removal, without getting into why, so it had no stance to misrepresent. The text I proposed was prefaced with “how about: …?”, and based on reasons I’ve been given previously by other people. That was a question whether that’s the right representation, not a statement. I made a wrong assumption, the text wasn’t right, so we found a different one that satisfied him.


  • Why do you say like crap? I took time to understand his position and reasons (which was helpful, because they were different reasons than requests before that). We’ve agreed on a way forward, and I have fulfilled his wish. It has been a bit frustrating for both of us, because it was in essence a conflict, but I think it’s been resolved in a civil way.