Zamieszczone przez naruse 2016-06-20
Tłumaczone przez Michał "Quintasan" Zając
Jest nam miło ogłosić wydanie Rubiego 2.4.0-preview1.
Ruby 2.4.0-preview1 jest pierwszym wydaniem wstępnym Rubiego 2.4.0. Wydanie preview1 pojawiło się wcześniej niż zwykle ponieważ zawiera dużo usprawnień oraz funkcjonalności. Podziel się z nami swoimi uwagami poniważ Ruby 2.4.0 jest nadal w trakcie rozwoju
Połączenie Fixnum i Bignum do klasy Integer
Mimo że standard ISO/IEC 30170:2012 nie opisuje szczegółów klasy Integer, CRuby posiada dwie publiczne klasy Integer: Fixnum i Bignum. Ruby 2.4 połączy obie klasy w klasę Integer
Klasa String wspiera kapitalizację znaków Unicode
Metody String/Symbol#upcase/downcase/swapcase/capitalize(!)
od teraz
potrafią zmieniać kapitalizację znaków Unicode.
Poprawki wypływające na wydajność
Ruby 2.4 zawiera poniższe usprawnienia pozytywnie wypływające na wydajność:
Array#max, Array#min
[x, y].max
i [x, y].min
zostały zoptymalizowane tak,
aby nie tworzyć tymczasowej tablicy w pewnych przypadkach
Regexp#match?
Dodano metodę Regexp#match?
która dopasowuje wyrażenie regularne bez
tworzenia referencji i modyfikacji $~
redukując ilość
zaalokowanych obiektów.
Inne poprawki wpływające na wydajność
Debugowanie
Thread#report_on_exception oraz Thread.report_on_exception
Ruby ignoruje wyjątki w wątkach chyba że inny wątek jawnie wywowła join.
Ustawiając report_on_exception = true
zostanie wyświetlony komunikat
jeżeli wątek zakończy pracę w wyniku nieobsłużonego wyjątku.
Prosimy o Twoją opinię jaka powinna być domyślna wartość
report_on_exception
.
Wykrywanie zakleszczenia wątków od teraz pokazuje zrzuty stosu oraz zależności
Ruby potrafi wykrywać zakleszczenia ale informacje zwracane przez interpreter nie zawierają wystarczająco informacji by pozwolić na debugowanie. Od Rubiego 2.4 pokazywane będą zrzuty stosu oraz zależności oczekujących wątków.
Wypróbuj Rubiego 2.4.0-preview1 i podziel się z nami swoimi spostrzeżeniami!
Znaczące zmiany w stosunku do wersji 2.3
Pliki NEWS oraz ChangeLog zawierają listę zmian.
Od wydania Rubiego 2.3 zmieniło się 1140 plików, dodano 33126 linii kodu(+) a usunięto 50993(-)
Pobierz
-
https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview1.tar.bz2
- SIZE: 14108114 bytes
- SHA1: 7dcc42548d0724d83b6589ab98f34282845d7bcd
- SHA256: 17570f0b84215ca82252f10c167ee50bc075383c018420c6b2601ae1cade0649
- SHA512: c9873e8686eb54dbde61d6e23cd5197beebccd6cb31fd12c82763ebe1fde17095d7514d9d93c2c82b238032c98691df5479dc2d666a8a590e0fc54450ec29cb5
-
https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview1.tar.gz
- SIZE: 17605452 bytes
- SHA1: 1003a1e57547d81f4bb979c0f40f242afc284cd5
- SHA256: 80d02f49f40e7ce07b70bee7efda751b0595a349a017306e9fe8caad5da13e64
- SHA512: 4b603ab4ff9ea7e8bb8053aa4b638839d534241466d7f0e4d5bca3f2ea416694c2ea391790f1ffdc07fa538918d27707621741eb0ddc7bd00eb9d7628622787a
-
https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview1.tar.xz
- SIZE: 11155800 bytes
- SHA1: bc33085277266f5a09a143bf6817affcb77f8e7f
- SHA256: 62942c7300727469fe3d2b43e5a5c772d4836cf624a1d644bdece2afaca472c8
- SHA512: dfc2c6642d49fa95383817a6dc82c416b3218ddfdaf882d6d2e5a7da22d0a5ac142e516a57aa96214070f3c7551d275044233ac052c82d67189b01c39847aad4
-
https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.0-preview1.zip
- SIZE: 19904781 bytes
- SHA1: 25c16ee91bbcb0224f80e20d938f5c08832973f7
- SHA256: fd588aea1558b1171f87a3dd342ee207b8995a2c0a8241d7aa15bcfa16036854
- SHA512: f2fff35ff9157a4b31177b3d6b91bdaad04c22b3c626c3a5e5ec9a31b103f9607b31c909ef27880065cfdbcfa5d6901a6db89d22e0c645666d069c5b6dd1818b
Komentarz do wydania
Inne informacje oraz harmonogram wydań kolejnych wersji dostępny na: