[{"data":1,"prerenderedAt":570},["ShallowReactive",2],{"navigation_docs":3,"-registries-cargo":72,"-registries-cargo-surround":565},[4,40],{"title":5,"path":6,"stem":7,"children":8,"icon":39},"Guide","\u002Fguide","1.guide\u002F1.index",[9,11,15,19,23,27,31,35],{"title":10,"path":6,"stem":7},"Getting Started",{"title":12,"path":13,"stem":14},"PURLs","\u002Fguide\u002Fpurl","1.guide\u002F2.purl",{"title":16,"path":17,"stem":18},"Lookups","\u002Fguide\u002Flookups","1.guide\u002F3.lookups",{"title":20,"path":21,"stem":22},"Caching","\u002Fguide\u002Fcache","1.guide\u002F4.cache",{"title":24,"path":25,"stem":26},"CLI","\u002Fguide\u002Fcli","1.guide\u002F5.cli",{"title":28,"path":29,"stem":30},"Agents","\u002Fguide\u002Fagents","1.guide\u002F6.agents",{"title":32,"path":33,"stem":34},"Custom Registries","\u002Fguide\u002Fcustom","1.guide\u002F7.custom",{"title":36,"path":37,"stem":38},"Explorer","\u002Fguide\u002Fexplorer","1.guide\u002F8.explorer","i-lucide-book-open",{"title":41,"path":42,"stem":43,"children":44,"icon":71},"Registries","\u002Fregistries","2.registries\u002F0.index",[45,47,51,55,59,63,67],{"title":46,"path":42,"stem":43},"Overview",{"title":48,"path":49,"stem":50},"npm","\u002Fregistries\u002Fnpm","2.registries\u002F01.npm",{"title":52,"path":53,"stem":54},"crates.io","\u002Fregistries\u002Fcargo","2.registries\u002F02.cargo",{"title":56,"path":57,"stem":58},"PyPI","\u002Fregistries\u002Fpypi","2.registries\u002F03.pypi",{"title":60,"path":61,"stem":62},"RubyGems","\u002Fregistries\u002Frubygems","2.registries\u002F04.rubygems",{"title":64,"path":65,"stem":66},"Packagist","\u002Fregistries\u002Fpackagist","2.registries\u002F05.packagist",{"title":68,"path":69,"stem":70},"Arch Linux","\u002Fregistries\u002Falpm","2.registries\u002F06.alpm","i-lucide-library",{"id":73,"title":52,"body":74,"description":557,"extension":558,"links":559,"meta":560,"navigation":562,"path":53,"seo":563,"stem":54,"__hash__":564},"docs\u002F2.registries\u002F02.cargo.md",{"type":75,"value":76,"toc":547},"minimark",[77,81,86,145,149,153,223,253,256,282,286,340,350,354,365,369,493,497,534,538,543],[78,79],"registry-facts",{"ecosystem":80},"cargo",[82,83,85],"h2",{"id":84},"address-it","Address it",[87,88,93],"pre",{"className":89,"code":90,"language":91,"meta":92,"style":92},"language-ts shiki shiki-themes github-light github-light poimandres","await fetchPackageFromPURL(\"pkg:cargo\u002Fserde\");\nawait fetchDependenciesFromPURL(\"pkg:cargo\u002Fserde@1.0.229\");\n","ts","",[94,95,96,126],"code",{"__ignoreMap":92},[97,98,101,105,109,113,117,121,123],"span",{"class":99,"line":100},"line",1,[97,102,104],{"class":103},"sZW6a","await",[97,106,108],{"class":107},"sULi6"," fetchPackageFromPURL",[97,110,112],{"class":111},"sKlNE","(",[97,114,116],{"class":115},"scVjq","\"",[97,118,120],{"class":119},"sQ7BG","pkg:cargo\u002Fserde",[97,122,116],{"class":115},[97,124,125],{"class":111},");\n",[97,127,129,131,134,136,138,141,143],{"class":99,"line":128},2,[97,130,104],{"class":103},[97,132,133],{"class":107}," fetchDependenciesFromPURL",[97,135,112],{"class":111},[97,137,116],{"class":115},[97,139,140],{"class":119},"pkg:cargo\u002Fserde@1.0.229",[97,142,116],{"class":115},[97,144,125],{"class":111},[146,147,148],"p",{},"Crates have no namespace. Names are used as they are.",[82,150,152],{"id":151},"what-it-reads","What it reads",[154,155,156,169],"table",{},[157,158,159],"thead",{},[160,161,162,166],"tr",{},[163,164,165],"th",{},"Call",[163,167,168],{},"Endpoint",[170,171,172,185,199,211],"tbody",{},[160,173,174,180],{},[175,176,177],"td",{},[94,178,179],{},"fetchPackage",[175,181,182],{},[94,183,184],{},"GET \u002Fapi\u002Fv1\u002Fcrates\u002F{name}",[160,186,187,192],{},[175,188,189],{},[94,190,191],{},"fetchVersions",[175,193,194,195,198],{},"the same, ",[94,196,197],{},"versions"," array",[160,200,201,206],{},[175,202,203],{},[94,204,205],{},"fetchDependencies",[175,207,208],{},[94,209,210],{},"GET \u002Fapi\u002Fv1\u002Fcrates\u002F{name}\u002F{version}\u002Fdependencies",[160,212,213,218],{},[175,214,215],{},[94,216,217],{},"fetchMaintainers",[175,219,220],{},[94,221,222],{},"GET \u002Fapi\u002Fv1\u002Fcrates\u002F{name}\u002Fowner_user",[146,224,225,228,229,232,233,236,237,240,241,244,245,248,249,252],{},[94,226,227],{},"latestVersion"," is ",[94,230,231],{},"max_stable_version",", with ",[94,234,235],{},"max_version"," as the fallback for crates that only have pre-releases. ",[94,238,239],{},"documentation"," is the crate's own docs link, ",[94,242,243],{},"repository"," and ",[94,246,247],{},"homepage"," come straight from the crate. ",[94,250,251],{},"metadata"," carries downloads, recent downloads, categories and creation and update dates.",[82,254,255],{"id":197},"Versions",[146,257,258,259,262,263,266,267,270,271,274,275,278,279,281],{},"Every version has ",[94,260,261],{},"publishedAt"," from ",[94,264,265],{},"created_at",", ",[94,268,269],{},"integrity"," as ",[94,272,273],{},"sha256-"," plus the checksum, and its own license. A yanked version has ",[94,276,277],{},"status: \"yanked\"",". ",[94,280,251],{}," carries the crate size, the feature map and the downloads of that version.",[82,283,285],{"id":284},"dependencies","Dependencies",[154,287,288,303],{},[157,289,290],{},[160,291,292,298],{},[163,293,294,295],{},"crates.io ",[94,296,297],{},"kind",[163,299,300],{},[94,301,302],{},"scope",[170,304,305,317,329],{},[160,306,307,312],{},[175,308,309],{},[94,310,311],{},"normal",[175,313,314],{},[94,315,316],{},"runtime",[160,318,319,324],{},[175,320,321],{},[94,322,323],{},"dev",[175,325,326],{},[94,327,328],{},"development",[160,330,331,336],{},[175,332,333],{},[94,334,335],{},"build",[175,337,338],{},[94,339,335],{},[146,341,342,345,346,349],{},[94,343,344],{},"optional"," is the crate's own optional flag. Dependencies that apply to one target only are included with no marker; the ",[94,347,348],{},"target"," is not surfaced.",[82,351,353],{"id":352},"maintainers","Maintainers",[146,355,356,357,360,361,364],{},"Owner users, each with a ",[94,358,359],{},"login",", a ",[94,362,363],{},"name"," and a URL. Owner teams are not listed; the endpoint only returns users.",[82,366,368],{"id":367},"urls","URLs",[87,370,372],{"className":89,"code":371,"language":91,"meta":92,"style":92},"urls.registry(\"serde\"); \u002F\u002F https:\u002F\u002Fcrates.io\u002Fcrates\u002Fserde\nurls.download(\"serde\", \"1.0.229\"); \u002F\u002F https:\u002F\u002Fcrates.io\u002Fapi\u002Fv1\u002Fcrates\u002Fserde\u002F1.0.229\u002Fdownload\nurls.documentation(\"serde\", \"1.0.229\"); \u002F\u002F https:\u002F\u002Fdocs.rs\u002Fserde\u002F1.0.229\nurls.readme(\"serde\", \"1.0.229\"); \u002F\u002F https:\u002F\u002Fcrates.io\u002Fapi\u002Fv1\u002Fcrates\u002Fserde\u002F1.0.229\u002Freadme\n",[94,373,374,401,432,462],{"__ignoreMap":92},[97,375,376,379,382,385,387,389,392,394,397],{"class":99,"line":100},[97,377,367],{"class":378},"spVlQ",[97,380,381],{"class":111},".",[97,383,384],{"class":107},"registry",[97,386,112],{"class":111},[97,388,116],{"class":115},[97,390,391],{"class":119},"serde",[97,393,116],{"class":115},[97,395,396],{"class":111},"); ",[97,398,400],{"class":399},"sjhu3","\u002F\u002F https:\u002F\u002Fcrates.io\u002Fcrates\u002Fserde\n",[97,402,403,405,407,410,412,414,416,418,420,422,425,427,429],{"class":99,"line":128},[97,404,367],{"class":378},[97,406,381],{"class":111},[97,408,409],{"class":107},"download",[97,411,112],{"class":111},[97,413,116],{"class":115},[97,415,391],{"class":119},[97,417,116],{"class":115},[97,419,266],{"class":111},[97,421,116],{"class":115},[97,423,424],{"class":119},"1.0.229",[97,426,116],{"class":115},[97,428,396],{"class":111},[97,430,431],{"class":399},"\u002F\u002F https:\u002F\u002Fcrates.io\u002Fapi\u002Fv1\u002Fcrates\u002Fserde\u002F1.0.229\u002Fdownload\n",[97,433,435,437,439,441,443,445,447,449,451,453,455,457,459],{"class":99,"line":434},3,[97,436,367],{"class":378},[97,438,381],{"class":111},[97,440,239],{"class":107},[97,442,112],{"class":111},[97,444,116],{"class":115},[97,446,391],{"class":119},[97,448,116],{"class":115},[97,450,266],{"class":111},[97,452,116],{"class":115},[97,454,424],{"class":119},[97,456,116],{"class":115},[97,458,396],{"class":111},[97,460,461],{"class":399},"\u002F\u002F https:\u002F\u002Fdocs.rs\u002Fserde\u002F1.0.229\n",[97,463,465,467,469,472,474,476,478,480,482,484,486,488,490],{"class":99,"line":464},4,[97,466,367],{"class":378},[97,468,381],{"class":111},[97,470,471],{"class":107},"readme",[97,473,112],{"class":111},[97,475,116],{"class":115},[97,477,391],{"class":119},[97,479,116],{"class":115},[97,481,266],{"class":111},[97,483,116],{"class":115},[97,485,424],{"class":119},[97,487,116],{"class":115},[97,489,396],{"class":111},[97,491,492],{"class":399},"\u002F\u002F https:\u002F\u002Fcrates.io\u002Fapi\u002Fv1\u002Fcrates\u002Fserde\u002F1.0.229\u002Freadme\n",[82,494,496],{"id":495},"gotchas","Gotchas",[498,499,500,516,527],"ul",{},[501,502,503,504,507,508,511,512,515],"li",{},"crates.io requires a ",[94,505,506],{},"User-Agent"," and rate limits anonymous clients. The default client sends ",[94,509,510],{},"registries\u002F0.1.0","; set your own through ",[94,513,514],{},"new Client({ userAgent })"," if you make many calls.",[501,517,518,520,521,523,524,526],{},[94,519,231],{}," can be older than ",[94,522,235],{}," when the newest release is a pre-release; ",[94,525,227],{}," follows the stable one on purpose.",[501,528,529,530,533],{},"The dependencies endpoint answers per version. Asking for a version that does not exist is a ",[94,531,532],{},"NotFoundError"," with the version attached.",[82,535,537],{"id":536},"where-it-lives","Where it lives",[146,539,540,381],{},[94,541,542],{},"src\u002Fregistries\u002Fcargo.ts",[544,545,546],"style",{},"html pre.shiki code .sZW6a, html code.shiki .sZW6a{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#5DE4C7C0}html pre.shiki code .sULi6, html code.shiki .sULi6{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#E4F0FBD0}html pre.shiki code .sKlNE, html code.shiki .sKlNE{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#A6ACCD}html pre.shiki code .scVjq, html code.shiki .scVjq{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#A6ACCD}html pre.shiki code .sQ7BG, html code.shiki .sQ7BG{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#5DE4C7}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spVlQ, html code.shiki .spVlQ{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E4F0FB}html pre.shiki code .sjhu3, html code.shiki .sjhu3{--shiki-light:#6A737D;--shiki-light-font-style:inherit;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#767C9DB0;--shiki-dark-font-style:italic}",{"title":92,"searchDepth":128,"depth":128,"links":548},[549,550,551,552,553,554,555,556],{"id":84,"depth":128,"text":85},{"id":151,"depth":128,"text":152},{"id":197,"depth":128,"text":255},{"id":284,"depth":128,"text":285},{"id":352,"depth":128,"text":353},{"id":367,"depth":128,"text":368},{"id":495,"depth":128,"text":496},{"id":536,"depth":128,"text":537},"The crates.io API across four endpoints, with yanked versions as a status and docs.rs as the documentation home.","md",null,{"icon":561},"i-simple-icons-rust",true,{"title":52,"description":557},"cNv1MpTLiWoV0za97zDFp9KhFjGQSjsPrYICkc2sI9k",[566,568],{"title":48,"path":49,"stem":50,"description":567,"children":-1},"The npm registry API, one document per package, with scopes in the PURL namespace and deprecations as a version status.",{"title":56,"path":57,"stem":58,"description":569,"children":-1},"PyPI's JSON API for metadata and the Simple API for versions, with PEP 503 name normalization and extras turned into dependency scopes.",1788462724332]