Skip to content

Commit 1ee1801

Browse files
vtamaraJuanitoFatas
authored andcommitted
Translation 2017-12-25-ruby-2-5-0-released.md (es) (#1823)
1 parent 1de0dc9 commit 1ee1801

File tree

1 file changed

+139
-0
lines changed

1 file changed

+139
-0
lines changed
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
---
2+
layout: news_post
3+
title: "Ruby 2.5.0 Publicado"
4+
author: "naruse"
5+
translator: "vtamara"
6+
date: 2017-12-25 00:00:00 +0000
7+
lang: es
8+
---
9+
10+
Nos complace anunciar la publicación de Ruby 2.5.0.
11+
12+
Ruby 2.5.0 es la primera versión estable de la serie 2.5 de Ruby.
13+
Introduce muchas características nuevas y mejoras en desempeño.
14+
Los cambios más notables son los siguientes:
15+
16+
## Nuevas características
17+
18+
* El uso de `rescue`/`else`/`ensure` ahora es permitido directamente
19+
dentro de bloques `do`/`end`.
20+
[[Característica #12906]](https://bugs.ruby-lang.org/issues/12906)
21+
* Agregada `yield_self` para ceder al bloque dado su contexto.
22+
A diferencia de `tap`, retorna el resultado del bloque.
23+
[[Característica #6721]](https://bugs.ruby-lang.org/issues/6721)
24+
* Soporta medición de cobertura de ramas y de cobertura de métodos.
25+
La cobertura de ramas indica que ramas se ejecutan y cuales no.
26+
La cobertura de métodos indica que métodos son llamados y cuales no.
27+
Al ejecutar un conjunto de pruebas con estas nuevas características, sabrá
28+
que ramas y que métodos se ejecutan, y evaluará la cobertura total del
29+
conjunto de pruebas de manera más rigurosa.
30+
[[Característica #13901]](https://bugs.ruby-lang.org/issues/13901)
31+
* Hash#slice [[Característica #8499]](https://bugs.ruby-lang.org/issues/8499)
32+
y Hash#transform_keys [[Característica #13583]](https://bugs.ruby-lang.org/issues/13583)
33+
* Struct.new puede crear clases que aceptan argumentos con palabra clave.
34+
[[Característica #11925]](https://bugs.ruby-lang.org/issues/11925)
35+
* Enumerable#any?, all?, none?, y one? aceptan un patrón como argumento.
36+
[[Característica #11286]](https://bugs.ruby-lang.org/issues/11286)
37+
* Se ha eliminado la búsqueda de constantes en el nivel superior
38+
cuando no se encuentran en una clase.
39+
[[Característica #11547]](https://bugs.ruby-lang.org/issues/11547)
40+
* Una de sus librerías más amadas, `pp.rb`, ahora se carga automaticamente.
41+
Ya no necesita escribir `require "pp"`.
42+
[[Característica #14123]](https://bugs.ruby-lang.org/issues/14123)
43+
* Impresión de la trazas y del mensaje de error en orden inverso (las llamadas
44+
más antiguas primero, las más recientes al final). Cuando aparece una
45+
traza larga en su terminal (TTY), puede encontrar facilmente la línea
46+
causante al final de la traza. Note que el orden se invierte sólo cuando
47+
la traza se imprime directamente en la terminal.
48+
[[Característica #8661]](https://bugs.ruby-lang.org/issues/8661) [experimental]
49+
50+
## Mejoras en desempeño
51+
52+
* Mejora del 5 al 10% en desempeño al eliminar todas las instrucciones `trace`
53+
del bytecode general (secuencias de instrucciones).
54+
La instrucción `trace` se añadió para dar soporte a `TracePoint`.
55+
Sin embargo, en la mayoría de casos, `TracePoint` no se usa y las
56+
instrucciones `trace` son gasto puro. En cambio, ahora usamos una técnica
57+
de instrumentación dinámica.
58+
Ver detalles en la [[Características #14104]](https://bugs.ruby-lang.org/issues/14104).
59+
* Pasar un bloque por un parámetro de bloque (e.g. `def foo(&b); bar(&b); end`)
60+
es cerca de 3 veces más rápido que en Ruby 2.4 por la técnica de
61+
"localización diferida de Proc"
62+
[[Característica #14045]](https://bugs.ruby-lang.org/issues/14045)
63+
* Se reescribió Mutex para disminuir su tamaño y aumentar su rapidez.
64+
[[Característica #13517]](https://bugs.ruby-lang.org/issues/13517)
65+
* ERB ahora genera el código de una plantilla dos veces más rápido que
66+
en Ruby 2.4.
67+
* Mejorado el desempeño de algunos métodos incorporados incluyendo
68+
`Array#concat`, `Enumerable#sort_by`, `String#concat`, `String#index`,
69+
`Time#+` y más.
70+
* IO.copy_stream usa copy_file_range(2) para copiar con la opción offload
71+
en Linux (es decir sin leer ni escribir el contenido sino añadiendo
72+
una referencia cuando el sistema de archivos lo permite).
73+
[[Característica #13867]](https://bugs.ruby-lang.org/issues/13867)
74+
75+
## Otros cambios notables desde la versión 2.4
76+
77+
* SecureRandom ahora prefiere fuentes proveidas por el sistema operativo
78+
en lugar de OpenSSL.
79+
[[Falla #9569]](https://bugs.ruby-lang.org/issues/9569)
80+
* Promovidas cmath, csv, date, dbm, etc, fcntl, fiddle, fileutils, gdbm, ipaddr,
81+
scanf, sdbm, stringio, strscan, webrick, zlib de la librería estándar
82+
a gemas por omisión.
83+
* Actualización a [Onigmo](https://github.com/k-takata/Onigmo/) 6.1.3.
84+
* Añade el [operador ausente](https://github.com/k-takata/Onigmo/issues/87).
85+
* Note que [Ruby 2.4.1](https://www.ruby-lang.org/en/news/2017/03/22/ruby-2-4-1-released/) también incluye este cambio.
86+
* Actualización a Psych 3.0.2.
87+
* Actualización a RubyGems 2.7.3.
88+
* Actualización a RDoc 6.0.1.
89+
* [Cambia el analizador léxico de IRB por uno basado en Ripper](https://github.com/ruby/rdoc/pull/512).
90+
Esto mejora considerablemente la velocidad de generación de la
91+
documentación.
92+
* Resueltas muchas fallas de los últimos diez años.
93+
* Soporta la nueva sintaxis de las versiones más recientes de Ruby.
94+
* Actualizada versión soportada de Unicode a 10.0.0.
95+
* `Thread.report_on_exception` ahora queda en `true` por omisión.
96+
Este cambio ayuda a depurar programas de multiples hilos.
97+
[[Característica #14143]](https://bugs.ruby-lang.org/issues/14143)
98+
* IO#write ahora recibe múltiples argumentos.
99+
[[Característica #9323]](https://bugs.ruby-lang.org/issues/9323)
100+
101+
Ver detalles en [NEWS](https://github.com/ruby/ruby/blob/v2_5_0/NEWS)
102+
o en la [bitácora de commits](https://github.com/ruby/ruby/compare/v2_4_0...v2_5_0).
103+
104+
Con esos cambios,
105+
[6158 archivos cambiaron, 348484 inserciones (+), 82747 eliminaciones(-)](https://github.com/ruby/ruby/compare/v2_4_0...v2_5_0)
106+
desde Ruby 2.4.0!
107+
108+
¡Feliz navidad, felices festividades y disfrute programando con Ruby 2.5!
109+
110+
111+
## Descargas
112+
113+
* <https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.gz>
114+
115+
SIZE: 15834941 bytes
116+
SHA1: 58f77301c891c1c4a08f301861c26b1ea46509f6
117+
SHA256: 46e6f3630f1888eb653b15fa811d77b5b1df6fd7a3af436b343cfe4f4503f2ab
118+
SHA512: 0712fe68611f5d0cd6dd54b814f825478e64b6a62bdf67bce431f4dca2dc00b1a33f77bebfbcd0a151118a1152554ab457decde435b424aa1f004bc0aa40580d
119+
120+
* <https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.zip>
121+
122+
SIZE: 19495617 bytes
123+
SHA1: 700b6f55d689a5c8051c8c292b9e77a1b50bf96e
124+
SHA256: 94559ea6e3c619423da604e503ce1dc1c465d6e0747a07fbdc5f294acaf14c24
125+
SHA512: e4324064cee8c65b80192e3eff287e915d2d40464d300744c36fb326ae4b1846911400a99d4332192d8a217009d3a5209b43eb5e8bc0b739035bef89cc493e84
126+
127+
* <https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.bz2>
128+
129+
SIZE: 13955820 bytes
130+
SHA1: 827b9a3bcffa86d1fc9ed96d403cb9dc37731688
131+
SHA256: d87eb3021f71d4f62e5a5329628ac9a6665902173296e551667edd94362325cc
132+
SHA512: 8f6fdf6708e7470f55bc009db2567cd8d4e633ad0678d83a015441ecf5b5d88bd7da8fb8533a42157ff83b74d00b6dc617d39bbb17fc2c6c12287a1d8eaa0f2c
133+
134+
* <https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.xz>
135+
136+
SIZE: 11292472 bytes
137+
SHA1: 9c7babcf9e299be3f197d9091024ae458f1a1273
138+
SHA256: 1da0afed833a0dab94075221a615c14487b05d0c407f991c8080d576d985b49b
139+
SHA512: 55714a33d7661fe8b432f73c34fd67b49699f8b79df1cbd680a74899124d31111ab0f444677672aac1ba725820182940d485efb2db0bf2bc96737c5d40c54578

0 commit comments

Comments
 (0)