Taking advantage of New Rust Features
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 20/100
Piste de recherche
Start by choosing one unchecked Rust feature or modernization item in the checklist, such as cargo fmt and CI checks, docs.rs annotations, or const generics. Formulate the goal and expected gain before implementation, then document the result in the pull request; completion means the selected item is justified and addressed or split into a focused issue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Ideas and tracking to take advantage of “new” features in Rust
All features to be used because of what gain they give us, not to score points. Formulate goal & gain before implementing - and write it up the pull request 🙂.
- std::alloc
- use/namespaced macros - #517
- std::arch and
target_feature
I'd prefer significant work in this area to take place in a separate crate, that we depend on. Something that gathers low level "loops" in one place. Like this, but revived and remade - NonZero for nonzero integers
- NonNull for pointers #434
- repr(transparent)
- needs_drop
- pub(crate) - This can be used for reorganization of a quite old crate structure
-
const fn(1.31) - Inclusive ranges
- Rustdoc item links
- 2018 edition path rules #567
- Run
cargo fmton repository and add format checking to CI (now thatrustfmtis stable). - Possible use of
no_std+alloc. (1.36) #708 -
MaybeUninit(1.36) #685 - Annotations in docs to indicate when items are enabled by features. This requires the unstable doc_cfg feature, so we should probably enable this only on docs.rs. To do so, we can add this to the crate:
#![cfg_attr(docsrs, feature(doc_cfg))]
and then on each item enabled by a specific feature, we add this:
#[cfg_attr(docsrs, doc(cfg(feature = "thefeature")))]
(For an example, see async_compression.)
- Const generics #961
Future features (not relevant yet, because they don't exist in stable Rust)
- Variadic generics
- Generic associated types
- Custom DST
- Specialization
- Allocator trait
Iterator::try_fold(Try is unstable) #706- trait aliases
This is a tracking issue, please edit it.
- Langage dominant
- Rust
- Étoiles
- 4.3k
- Forks
- 391
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de rust-ndarray/ndarray
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
rust-ndarray/ndarray#1612 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
rust-ndarray/ndarray#1617 · 1 commentaire ·
-
Stack overflow in `triu` Ouvertebug good first issue
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
rust-ndarray/ndarray#1615 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
rust-ndarray/ndarray#1610 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
rust-ndarray/ndarray#1609 ·
Toutes les issues de rust-ndarray/ndarray
Issues similaires
-
risk:low runtime status:in-progress type:test
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
zeroclaw-labs/zeroclaw#11023 ·
-
good first issue refactor
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
EricSpencer00/Resilient#4835 · 1 commentaire ·
-
agent:ready documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
cesarferreira/stax#890 ·
-
bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100