Skip to content
The Rubinius Language Platform http://rubinius.com
Ruby C++ C Perl HTML Groff Other
Latest commit d436251 @tak1n tak1n Fix Module#define_method
When defining a method through a proc which gets created out of a method
which is defined in a C-ext, `meth.ruby_method.executable` is a instance of
Rubinius::NativeCode and not Rubinius::CompiledCode which does not
respond to #scope.

This is used for example in pg gem:
https://github.com/ged/ruby-pg/blob/bb4693e811f9348f202835e701e6509d15685b0a/lib/pg/connection.rb#L187
Failed to load latest commit information.
.bundle Updated .bundle/config.
bin Removed rubygems override env vars when running bin/mspec.
core Fix Module#define_method
debian debian build update for rubinius-2.3
library Fixed paths and cleaned up var warnings.
mspec Updated MSpec source to [33m4d5.
rakelib Fixed installing.
scripts Install libedit-dev on Travis.
spec Added local variable methods to Binding
tools Changed references from vm/external_libs to vendor.
vendor Added explicit license file for zlib
vm Fixed paths and cleaned up var warnings.
.autotest added RUBY env for autotest
.editorconfig Added configuration file for EditorConfig.
.gdbinit Check CallFrames directly from their VM
.gitignore Renamed kernel/ to core/.
.travis.yml Fixed configure command.
AUTHORS fix typo in authors
BSD_LICENSE Break up old/new license & clarify what we use
CONTRIBUTING.md Changed "of the issue" to "if the issue"
Gemfile Updated rubinius-code gems.
Gemfile.installed Updated rubinius-code gems.
Gemfile.lock Fixed rubinius-compiler gem version.
LICENSE Break up old/new license & clarify what we use
README Clarified what is covered by what license
README.md Clarified what is covered by what license
Rakefile Renamed kernel/ to core/.
SECURITY Add basic instructions for security reports
THANKS THANKS copy edits
configure Renamed kernel/ to core/.
gems_list.txt Fixed rubinius-compiler gem version.
rubinius-build_tools.gemspec Added gemspecs for Rubinius meta-gems.
rubinius-developer_tools.gemspec Added gemspecs for Rubinius meta-gems.
rubinius.gemspec Fixed rubinius metagem description.
security.pub Add basic instructions for security reports

README.md

Gitter Build Status

The Rubinius Language Platform

Rubinius is a modern language platform that supports a number of programming languages.

Rubinius includes a bytecode virtual machine, generational garbage collector, and just-in-time (JIT) native machine code compiler. Rubinius provides concurrency support via native OS threads with no global interpreter lock.

Rubinius runs on Mac OS X and many Unix/Linux operating systems. Microsoft Windows is not yet supported.

Code of Conduct

Participation in the Rubinius project is governed by the Rubinius Code of Conduct.

The Ruby Programming Language

Many popular Ruby applications, like Rails, run on Rubinius, which aims to be compatible with Ruby version 2.2.

Rubinius includes a Ruby parser, Ruby bytecode compiler, Ruby core library, and C-API compatibility for native C extensions. The Ruby core library is written almost entirely in Ruby. The Ruby bytecode compiler and other tools, such as the debugger, are also written in Ruby. Rubinius provides the standard Ruby libraries, with the following exceptions:

  • Continuation
  • Ripper
  • TracePoint
  • Tracer

The following Ruby features are not supported on Rubinius:

  • Refinements
  • $SAFE levels

License

All source code in this repository is subject to the terms of the Mozilla Public License, version 2.0 unless stated otherwise. A copy of this license can be found the file "LICENSE" or at https://www.mozilla.org/MPL/2.0/.

Contributions made prior to January 3rd, 2016 are licensed under the old BSD 3-clause license. A copy of this license can be found in the file "BSD_LICENSE".

In the event a directory contains a "LICENSE", "LICENSE.txt" or "COPYING" file the license specified in said file applies to the contents of said directory and all sub directories, overwriting the licenses specified above.

Installing Rubinius from Source

To install Rubinius, use the following steps:

  1. Ensure that MRI 2.0+, rubygems, rake, git and LLVM are installed
  2. git clone git://github.com/rubinius/rubinius.git
  3. cd rubinius
  4. bundle
  5. ./configure --prefix=/path/to/install/dir
  6. rake

When the install process finishes, follow the directions printed to the terminal to add the Rubinius executable (bin) directory to your PATH. For more information see the documentation for Build Requirements and Building Rubinius.

Using RubyGems

Rubinius comes with RubyGems built-in. To install a gem, run the following:

$ rbx -S gem install <gem_name>

Documentation

The Rubinius documentation is available at the Rubinius website.

Issues & Support

Please file tickets for bugs or problems.

For additional help, visit the Rubinius Gitter chat room.

Contributing

The Rubinius team welcomes contributions. For more information, read the CONTRIBUTING file and see the documentation about contributing.

Something went wrong with that request. Please try again.