Ruby soname bump

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

We have Ruby 2.6 ready in side tag and we are about to merge the changes
back to Rawhide [1]. Therefore I just want to give heads up that
although we rebuilt most of the packages due to libruby soname bump,
there might still be some breakage. You can find the list of packages
with know issue in ruby-sig ML thread [2] and apologies for the issues.
Please let us know if you encounter any other issues.

Vít


[1] https://pagure.io/releng/issue/8034

[2]
https://lists.fedoraproject.org/archives/list/ruby-sig@xxxxxxxxxxxxxxxxxxxxxxx/message/CTYOIFZ4UNFZYUD74XPG47N3KQ2S7OC7/


Dne 28. 11. 18 v 21:07 Ben Cotton napsal(a):
> https://fedoraproject.org/wiki/Changes/Ruby_2.6
>
> == Summary ==
> Ruby 2.6 is the latest stable version of Ruby. Many new features and
> improvements are included for the increasingly diverse and expanding
> demands for Ruby. With this major update from Ruby 2.5 in Fedora 29 to
> Ruby 2.6 in Fedora 30, Fedora becomes the superior Ruby development
> platform.
>
> == Owner ==
> * Name: [[User:vondruch| Vít Ondruch]], [[User:pvalena| Pavel Valena]]
> * Email: vondruch@xxxxxxxxxx, pvalena@xxxxxxxxxx
>
> == Detailed Description ==
> Ruby 2.6 is upstream's new major release of Ruby. Many new features
> and improvements are included.
>
> === JIT ===
>
> Ruby 2.6 introduces an initial implementation of JIT (Just-in-time) compiler.
>
> JIT compiler aims to improve performance of any Ruby program
> execution. Unlike ordinary JIT compilers for other languages, Ruby’s
> JIT compiler does JIT compilation in a unique way, which prints C code
> to a disk and spawns common C compiler process to generate native
> code.
>
> The main purpose of this JIT release is to provide a chance to check
> if it works for your platform and to find out security risks before
> the 2.6 release. JIT compiler is supported when Ruby is built by GCC,
> Clang, or Microsoft VC++, which needs to be available on runtime.
> Otherwise you can’t use it for now.
>
> As of Ruby 2.6.0 preview3, we achieved 1.7x faster performance than
> Ruby 2.5 on CPU-intensive non-trivial benchmark workload called
> Optcarrot. The performance on memory-intensive workload like Rails
> application are going to be improved as well.
>
> === RubyVM::AST [Experimental] ===
>
> Ruby 2.6 introduces `RubyVM::AST` module.
>
> This module has `parse` method which parses a given ruby code of
> string and returns AST (Abstract Syntax Tree) nodes, and `parse_file`
> method which parses a given ruby code file and returns AST nodes.
> `RubyVM::AST::Node` class is also introduced. You can get location
> information and children nodes from `Node` objects. This feature is
> experimental. Compatibility of the structure of AST nodes are not
> guaranteed.
>
> === New Features ===
>
> * Add a new alias `then` to `Kernel#yield_self`.
> * Add `Random.bytes`.
> * Add `Binding#source_location`.  This method returns the source
> location of binding, a 2-element array of __FILE__ and __LINE__.
> * Add `:exception` option to let `Kernel.#system` raise error instead
> of returning `false`.
> * Add a new alias then to `Kernel#yield_self`.
> * `else` without `rescue` now causes a syntax error. [EXPERIMENTAL]
> * Constant names may start with a non-ASCII capital letter.
> * An endless range, (1..), is introduced. It works as it has no end.
>
> === Performance improvements ===
>
> * Speedup `Proc#call` because we don’t need to care about $SAFE any
> more. With `lc_fizzbuzz` benchmark it makes x1.4 speed improvement.
> * Speedup `block.call` where block is passed block parameter. Ruby 2.6
> improves the performance of passed block calling. There can observed
> 2.6x improvement with micro-benchmarks.
> * Transient Heap (theap) is introduced. theap is managed heap for
> short-living memory objects which are pointed by specific classes. For
> example, making small and short-living Hash object is x2 faster. With
> rdoc benchmark, 6-7% performance improvement is observed.
>
> === Other notable changes since 2.5 ===
>
> * `$SAFE` is a process global state and we can set `0` again.
> * Passing `safe_level` to `ERB.new` is deprecated. `trim_mode` and
> `eoutvar` arguments are changed to keyword arguments.
> * Merged RubyGems 3.0.0.beta2.
> * Merge Bundler as default gem.
>
> == Benefit to Fedora ==
>
> With a latest release, Ruby language is supporting the newest language
> features, which enables even faster and easier development of Ruby
> applications.
>
> == Scope ==
> * Proposal owners:
> ** Finish packaging of Ruby 2.6. Current changes available in PR
> https://src.fedoraproject.org/rpms/ruby/pull-request/32
> ** Rebuilding of Ruby packages providing native extensions (i.e.
> packages which depends on libruby).
> .
>
> * Other developers:
> ** Rebuild of packages with binary extensions (i.e. packages which
> depends on libruby) will be handled automatically, but some packages
> might need fixes/updates to support Ruby 2.6 properly.
>
> * Release engineering: [https://pagure.io/releng/issue/7936 #7936]
> ** Separate Koji tag for package rebuild will be needed.
> * Policies and guidelines: N/A
> * Trademark approval: N/A (not needed for this Change)
>
> == Upgrade/compatibility impact ==
> * User specific Ruby binary extensions need to be rebuild.
>
> == How To Test ==
> * No special hardware is needed.
> * To test, install Ruby 2.6. The test builds are pusblished in PR or
> on Ruby-SIG ML
> * Try to locally rebuild your packages using Ruby 2.6.
> * Use the packages with your applications previously written in Ruby.
> * If something doesn't work as it should, let us know.
>
> == User Experience ==
> The Ruby programs/scripts should behave as they were used to.
>
> == Dependencies ==
> <pre>
> $ dnf repoquery --disablerepo=* --enablerepo=rawhide
> --enablerepo=rawhide-source --arch=src --whatrequires 'ruby-devel' |
> sort | uniq | wc -l
> 156
> </pre>
>
> == Contingency Plan ==
> * Contingency deadline: Mass Rebuild
> * Blocks release? No
> * Blocks product? No
>
> == Documentation ==
> * [http://www.ruby-doc.org/ Help and documentation for the Ruby
> programming language]
> * [https://github.com/ruby/ruby/blob/v2_6_0_preview3/NEWS Ruby
> 2.6.0.preview3 NEWS]
>
> == Release Notes ==
> * The Ruby 2.6 bumps soname, therefore Ruby packages, which use binary
> extensions, should be rebuilt. Nevertheless, since upstream paid great
> attention to source compatibility, no changes to your code are needed.
>
> https://github.com/ruby/ruby/blob/trunk/NEWS
>
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux