{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreigczkrzjenqwmxt6oqllxyuaaappgh7cgpe3w3zjvaidxdexcpo4m",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mkp52hk5y2y2"
},
"path": "/t/pre-rfc-dns-domains-as-package-namespaces/24202?page=3#post_46",
"publishedAt": "2026-04-30T06:16:11.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "> I think you'll have a hard time convincing people if that's your stance. Even with namespaces there can only be one `json` , that won't change. You can have `jmillikin.github.io/json` , but that's not called `json` , just like `jmillikin_json` is not called `json` .\n\nThe package `jmillikin.github.io/json` contains the crate `json`, whereas the package `jmillikin_json` contains the crate `jmillikin_json`.\n\nThe purpose of namespaces is to allow multiple crates with the same name to have different package names, which is a useful feature for a package registry that tries to be a central place for an entire language's library ecosystem to register packages.\n\n> All this argument amounts to is having a nicer way to make distinguishing crate names, but that's not enough motivation for a change this big.\n\nIt's not a particularly big change (see the diffstat for the linked branches in the first post) and the value of allowing more people contribute packages to the Rust ecosystem is significant.",
"title": "[Pre-RFC] DNS domains as package namespaces"
}