[ANN] RubyInstaller 2.0.0-p0 released

In combination with the rest of the RubyInstaller team, I'm very
pleased to announce the release of RubyInstaller packages for Ruby
2.0.0-p0

This new version of Ruby also brings new changes to RubyInstaller.

Starting with 2.0.0, the packages will be provided in two versions:
32bits (x86) and 64bits (x64).

This is possible thanks to newer compiler provided by mingw-w64 project.

Over the past months our Continous Integration worker has been compiling and
running tests against GCC 4.7.2, ensuring this version satisfy the compilation
requirements of Ruby.

This also means newer DevKit package is required to use with this version.

As usual, installer and 7z packages are available at RubyInstaller
website and RubyForge for download:

http://rubyinstaller.org/downloads
http://rubyforge.org/frs/?group_id=167&release_id=47158

For verification, MD5 signatures of each file released are provided:

db47fc5837be2623d5f37dc3ef32ce4f *ruby-2.0.0-p0-doc-chm.7z
cc3d1262c3e80ddb72942966a5119dc4 *ruby-2.0.0-p0-i386-mingw32.7z
fd54283746ba0161aa06af6c2c886abf *ruby-2.0.0-p0-x64-mingw32.7z
ccdf7de8b77c29aea4254c409a40fe98 *rubyinstaller-2.0.0-p0.exe
5a6a605d3e38e2cb572dd418152a2fed *rubyinstaller-2.0.0-p0-x64.exe

Installer is also digitally signed to avoid alterations and UAC warnings.

You can read Ruby's own announcement here:

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/404900

= What's new in Ruby, for Windows users?

Ruby's announcement was generic in relation to all the new features added to
the language.

However, it missed enhancements specific to our platform of choice.

* Enhancements:
  * Faster startup due improved Windows-specific API. [Bug #6836]
  * Support ANSI-colors out of the box without the need of external tools
    or gems. [Feature #6418]
  * Fixes for native 64bits builds for Windows under MinGW

= What's new in RubyInstaller?

Beyond what is covered by Ruby itself, we have our own set of improvements:

* Enhancements:
  * Upgraded Ruby 2.0.0 to patchlevel 0
  * Upgraded OpenSSL to version 1.0.0k
  * Upgraded rb-readline to 0.5.0.pre.1 (compatible with Ruby 2.0)

* Bugfixes:
  * Generate documentation for target version of Ruby

= Important Notes

* Ruby 2.0.0-p0 is brand new

While officially 2.0.0 is stable, that doesn't mean all the software will
magically work on it.

Use 2.0.0 for development and verify your application, scripts and tools works
properly before deciding to run this in your production environment.

* Existing pre-compiled gems are not Ruby 2.0 compatible

Ruby 2.0 introduces ABI breakage which means compiled C extensions with previous
1.9.3 will work with Ruby 2.0.

DO NOT install Ruby 2.0 on top of existing Ruby 1.9.3, or try to use compiled
extensions with it.

You will be required to force compilation of those gems:

    gem install <name> --platform=ruby

This will require you have the extra dependencies required for that gem to
compile. Look at the gem documentation for the requirements.

* Do not use other DevKit version than the one recommended

This version of Ruby has been compiled and optimized for mingw-w64 GCC 4.7.2.

Use of older version of DevKit package to compile gems might result in
compilation issues during gem installation or simply segfaults.

Look for the DevKit installers identified with the name 'DevKit-mingw64-32' and
'DevKit-mingw64-64' for 32 and 64 bits respectively.

= Alternate download links

Sometimes RubyForge might have issues when trying to download the above files.

Please try adding "/noredirect" to the file download URLs so skip the entire
RubyForge's mirror functionality.

If that still doesn't work, try using RubyInstaller CDN directly by using
above filenames combined with the archive folder:

http://cdn.rubyinstaller.org/archives/2.0.0-p0/<filename.ext>

Same applies to DevKit URLs:

http://cdn.rubyinstaller.org/archives/devkits/<filename.ext>

···

--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

>{....
* Existing pre-compiled gems are not Ruby 2.0 compatible

Ruby 2.0 introduces ABI breakage which means compiled C extensions with
previous *1.9.3 will work* with Ruby 2.0.

DO NOT install Ruby 2.0 on top of existing Ruby 1.9.3, or try to use
compiled
extensions with it. ..}

Hi Luis
Congratulations for the long-awaited Ruby 2.0 p0 exe
may i just ask
when i read '..gems will not work' and next sentence
compiled C extensions '*1.9.3 will work'

···

*
is the word 'not' missing in the latter sentence?

best regards
Tim0

sqlite3 gem?

As indicated in the "Important Notes", existing pre-compiled gems will
not work with Ruby 2.0 as the gems do not contain pre-compiled
extension for it.

You need to force compilation, which requires you install development
headers and libraries that are dependencies of the gem/extension
you're trying to compile.

So: to compile sqlite3 for Ruby 2.0, you need:

* sqlite3 headers and libraries compiled and available
* force installation of sqlite3 to use "ruby" platform (as indicated
in the notes) and provide the directory where it will find sqlite3
headers and libraries.

For sqlite3 will be something like

gem install sqlite3 --platform=ruby --
--with-sqlite3-include=C:/path/to/sqlite3/include
--with-sqlite3-lib=C:/path/to/sqlite3/lib

See the documentation of each gem about that.

···

On Sun, Feb 24, 2013 at 6:58 PM, Richard Campbell <betam4x@gmail.com> wrote:

Awesome! Great work! Though I am already having issues with the 64 bit
version and sqlite3.

--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Is there an example of how to use this somewhere?

Vale,
Marvin

···

Am Mon, 25 Feb 2013 06:28:08 +0900 schrieb Luis Lavena <luislavena@gmail.com>:

  * Support ANSI-colors out of the box without the need of external
tools or gems. [Feature #6418]

Yes, that is a typo, but I think last sentence make it clear:

DO NOT install Ruby 2.0.0 on top of existing Ruby 1.9.3 or try to use
compiled extensions with it.

···

On Sun, Feb 24, 2013 at 7:05 PM, Tim0 <tigre7t@gmail.com> wrote:

>{....

* Existing pre-compiled gems are not Ruby 2.0 compatible

Ruby 2.0 introduces ABI breakage which means compiled C extensions with
previous 1.9.3 will work with Ruby 2.0.

DO NOT install Ruby 2.0 on top of existing Ruby 1.9.3, or try to use
compiled
extensions with it. ..}

Hi Luis
Congratulations for the long-awaited Ruby 2.0 p0 exe
may i just ask
when i read '..gems will not work' and next sentence
compiled C extensions '1.9.3 will work'

is the word 'not' missing in the latter sentence?

--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

thanks i read the intro link
Matz 's module refinements looks great
nested Ruby methods with refinements on the outer method

···

On Mon, Feb 25, 2013 at 9:07 AM, Luis Lavena <luislavena@gmail.com> wrote:

On Sun, Feb 24, 2013 at 7:05 PM, Tim0 <tigre7t@gmail.com> wrote:
>
>> >{....
>>
>> * Existing pre-compiled gems are not Ruby 2.0 compatible
>>
>> Ruby 2.0 introduces ABI breakage which means compiled C extensions with
>> previous 1.9.3 will work with Ruby 2.0.
>>
>> DO NOT install Ruby 2.0 on top of existing Ruby 1.9.3, or try to use
>> compiled
>> extensions with it. ..}
>
>
>
> Hi Luis
> Congratulations for the long-awaited Ruby 2.0 p0 exe
> may i just ask
> when i read '..gems will not work' and next sentence
> compiled C extensions '1.9.3 will work'
>
> is the word 'not' missing in the latter sentence?
>

Yes, that is a typo, but I think last sentence make it clear:

DO NOT install Ruby 2.0.0 on top of existing Ruby 1.9.3 or try to use
compiled extensions with it.

--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

it will be great if 2.0 is quicker i read this link at rubydev
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/46547
that has the Ubuntu language shootout test page
http://benchmarksgame.alioth.debian.org/u32/performance.php?test=binarytrees
a binary trees test Ruby 1.9.3 compared with C and others
our 1.9.3 is slow using twice the memory albeit half as much code
in C it takes 12 seconds and in Ruby 214 seconds
on the other hand Ruby is quick the test in LUA takes 7 minutes _ yawn

Tim0

···

On Mon, Feb 25, 2013 at 10:46 AM, Timothy Gregory <tigre7t@gmail.com> wrote:

thanks i read the intro link
Matz 's module refinements looks great
nested Ruby methods with refinements on the outer method

On Mon, Feb 25, 2013 at 9:07 AM, Luis Lavena <luislavena@gmail.com> wrote:

On Sun, Feb 24, 2013 at 7:05 PM, Tim0 <tigre7t@gmail.com> wrote:
>
>> >{....
>>
>> * Existing pre-compiled gems are not Ruby 2.0 compatible
>>
>> Ruby 2.0 introduces ABI breakage which means compiled C extensions with
>> previous 1.9.3 will work with Ruby 2.0.
>>
>> DO NOT install Ruby 2.0 on top of existing Ruby 1.9.3, or try to use
>> compiled
>> extensions with it. ..}
>
>
>
> Hi Luis
> Congratulations for the long-awaited Ruby 2.0 p0 exe
> may i just ask
> when i read '..gems will not work' and next sentence
> compiled C extensions '1.9.3 will work'
>
> is the word 'not' missing in the latter sentence?
>

Yes, that is a typo, but I think last sentence make it clear:

DO NOT install Ruby 2.0.0 on top of existing Ruby 1.9.3 or try to use
compiled extensions with it.

--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry