Comments (3)
FWIW, what we do in rustdoc is to be explicit: if an item is deprecated, we don't try to hide it. We include it, and mark it deprecated. I think this is also the right choice for cargo. People will find the names of deprecated packages in outdated documentation, recorded talks and so on. So the quickest way for them to learn the most up-to-date information is to see those packages listed and marked as deprecated.
If it turns out there are namespaces that have so many deprecated packages that it becomes hard to find the non-deprecated ones, it could make sense to have two sections: "Packages in this namespace" and "Deprecated packages in this namespace."
from crates.io.
Some ideas on the UX
- Make the
parent
inparent::child
a link to theparent
package - Have the
parent
package list allparent::child
packages
One UX problem I can think of for listing all child packages is not all are created equal. liquid
is a good example of where I can use this feature but I have liquid-<child>
packages that are deprecated. In this scenario, they will all be shown equally. In rust-lang/cargo#2608 I bring up the idea of a user and Project editable database. We could collapse or outright hide deprecated packages if we had a way to track that.
See also
from crates.io.
How precisely should this be represented in the index trie?
How we should name the .crate file / download URL
Looking through the RFC for all relevant comments on these
- rust-lang/rfcs#3243 (comment)
- rust-lang/rfcs#3243 (comment)
- rust-lang/rfcs#3243 (comment)
- Manishearth/namespacing-rfc#1 (comment)
General requirements is that the index trie and .crate
names need to be cross-platform
:
is disallowed on Windows- alphanumeric,
.+-
are generally the characters supported by distributions wrapping.crate
files- for go (mapping URL to distribution package), they replace reserved characters with
-
but migrating from packages using-
to::
could cause conflicts - for php (with
/
), map to-
- for perl (with
::
), map to-
- for go (mapping URL to distribution package), they replace reserved characters with
imo what cargo should use should be unambigious. This means we shouldn't map to -
. To support distributions, that leaves +
. Thats fairly restrictive if we ever want to support anything else, like registry namespacing (and not just API namespacing). I somewhat lean towards percent encoding of package names.
from crates.io.
Related Issues (20)
- crates.io's TOML snippet with metadata produces warnings when used in `Cargo.toml` HOT 2
- Download graphs not starting at y=0
- `recent_crate_downloads` materialised view is not refreshed with the new download counting implementation HOT 1
- 'Browse All Crates' results in `Something Went Wrong!' HOT 1
- API token expiry warning emails HOT 5
- Name squatting: Can't find current owner's contact info HOT 2
- README example rendering doesn't hide lines HOT 2
- An internal server error on crates.io website HOT 1
- Remove usage of EmberJS in the front-end? HOT 3
- Status 403 Forbidden HOT 1
- Image rendered wrongly HOT 3
- Crates with paths differing only by case are allowed HOT 2
- Unable to add owner via CLI; kinda works via web HOT 4
- GitHub special Markdown blocks aren't rendered in README section
- Policy page is missing indentation, changing its meaning HOT 1
- Failed to log in: Error obtaining token after logging out HOT 9
- Broken CONTRIBUTING link for crate `cargo-cyclonedx` HOT 8
- creates-io team outbound link, on the footer of creates.io - 404 not found at target
- internal server error when searching "using" HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from crates.io.