Σκουριά 1.36

Η ομάδα ανάπτυξης είναι ενθουσιασμένη που παρουσιάζει το Rust 1.36!

Τι νέο υπάρχει στο Rust 1.36;
Το μελλοντικό χαρακτηριστικό σταθεροποιήθηκε, από το νέο: alloc crate, MaybeUninit , NLL για Rust 2015, μια νέα υλοποίηση του HashMap και μια νέα σημαία -εκτός σύνδεσης για το Cargo.


Και τώρα πιο αναλυτικά:

  • Τέλος στο Rust 1.36 σταθεροποιήθηκε χαρακτηριστικό Μέλλον.
  • Κατανομή κιβωτίων.
    Από το Rust 1.36, τμήματα του std που εξαρτώνται από τον καθολικό κατανεμητή (όπως το Vec ), βρίσκονται στο κιβώτιο κατανομής. Τώρα το std θα επανεξάγει αυτά τα εξαρτήματα. Περισσότερα για αυτό.
  • Ίσως Μονάδα αντί για mem::unitialized.
    Σε προηγούμενες εκδόσεις, το mem::unitialized σάς επέτρεπε να παρακάμψετε τον έλεγχο αρχικοποίησης, χρησιμοποιήθηκε για lazy κατανομή πίνακα, αλλά αυτή η συνάρτηση είναι αρκετά επικίνδυνη (περισσότερο), επομένως ο τύπος MaybeUninit σταθεροποιήθηκε , που είναι πιο ασφαλές.
    Λοιπόν, από το MaybeUninit είναι μια ασφαλέστερη εναλλακτική λύση, τότε από το Rust 1.38, το mem::unitialized θα είναι ένα χαρακτηριστικό που έχει καταργηθεί.
    Εάν θέλετε να μάθετε περισσότερα σχετικά με την μη αρχικοποιημένη μνήμη, μπορείτε να διαβάσετε αυτήν την ανάρτηση ιστολογίου από τον Alexis Beingessner.
  • NLL για Rust 2015.
    Στην ανακοίνωση Σκουριά 1.31.0 Οι προγραμματιστές μας μίλησαν για το NLL (Non-Lexical Lifetime), μια βελτίωση για τη γλώσσα που κάνει τον ελεγκτή δανεισμού πιο έξυπνο και πιο φιλικό προς τον χρήστη. Παράδειγμα:
    fn main() {
    έστω mut x = 5;
    έστω y = &x;
    έστω z = &mut x; // Αυτό δεν επιτρεπόταν πριν από την 1.31.0.
    }

    Στο 1.31.0, το NLL λειτούργησε μόνο στο Rust 2018, με την υπόσχεση ότι οι προγραμματιστές θα προσθέσουν υποστήριξη στο Rust 2015.
    Εάν θέλετε να μάθετε περισσότερα για το NLL, μπορείτε να διαβάσετε περισσότερα σε αυτό καταχωρήσεις ιστολογίου (Φέλιξ Κλοκς).

  • Η νέα σημαία για το Cargo είναι εκτός σύνδεσης.
    Το Rust 1.36 σταθεροποίησε μια νέα σημαία για το Cargo. Η σημαία --offline λέει στο Cargo να χρησιμοποιεί εξαρτήσεις που έχουν αποθηκευτεί τοπικά στην προσωρινή μνήμη, ώστε να μπορούν να χρησιμοποιηθούν εκτός σύνδεσης αργότερα. Όταν οι απαραίτητες εξαρτήσεις δεν είναι διαθέσιμες εκτός σύνδεσης και εάν το Διαδίκτυο εξακολουθεί να απαιτείται, τότε το Cargo θα εμφανίσει ένα σφάλμα. Για να προλάβετε τις εξαρτήσεις, μπορείτε να χρησιμοποιήσετε την εντολή ανάκτησης φορτίου, η οποία θα κατεβάσει όλες τις εξαρτήσεις.
  • Εδώ μπορείτε να διαβάσετε μια πιο λεπτομερή επισκόπηση των αλλαγών.

Υπάρχουν επίσης αλλαγές στην τυπική βιβλιοθήκη:

Άλλες αλλαγές Σκωρία, Φορτίο и Clippy.

Πηγή: linux.org.ru

Προσθέστε ένα σχόλιο