calvinxiao / blog

Calvinxiao's blog
1 stars 0 forks source link

学习 Ruby - Ruby版本changelog #7

Open calvinxiao opened 6 years ago

calvinxiao commented 6 years ago

Ruby 版本changelog

2.5.0 2.4.0 2.3.0 2.2.0

2.2.0

  1. Symbol GC
  2. 新增量GC算法
  3. configure.in 支持 jemalloc 选项

2.3.0

  1. frozen string literal pragma, Ruby 3 的字符串是不可变的。 https://bugs.ruby-lang.org/issues/11473
  2. Safe navigation operator &., user&.profile

2.4.0

  1. Hash table improvement https://bugs.ruby-lang.org/issues/12142
  2. Unify Fixnum and Bignum into Integer, 以后只有 Integer,使用旧的gem版本会有warning
  3. [x, y].max 和 [x, y].min 可以优化成不创建临时数组
  4. Regexp#match? 不需要创建 back reference,可以减少对象的创建
  5. 访问实例变量更快 https://bugs.ruby-lang.org/issues/12274

2.5.0

  1. rescue else ensure 可以和 do end blocks 一起用
  2. Top-level constant look-up is no longer available.
  3. 自动 require "pp"
  4. 移除了所有 trace 指令,性能高 5-10%
  5. Block 参数更快 https://bugs.ruby-lang.org/issues/14045
  6. Mutex 重写,更高效
  7. ERB 渲染速度比 2.4 快两倍