3 ms·
RVM 1.0.0, Ruby 1.9.2 and Rails 3. + Rubinius will remove the GIL ("the work has already begun" -- Yehuda Katz http://yehudakatz.com/2010/08/14/threads-in-ruby
by earcar 16y ago
RVM 1.0.0, Ruby 1.9.2 and Rails 3.
+ Rubinius will remove the GIL ("the work has already begun" -- Yehuda Katz http://yehudakatz.com/2010/08/14/threads-in-ruby-enough-already/ http://yehudakatz.com/2010/08/14/threads-in-ruby-enough-alre...)
+ MacRuby will be even faster, more stable and more documented
It will be an awesome end of 2010/2011 for Ruby programmers.
- dasil003 16y agoDon't forget Bundler. There's a lot of ambivalence to Bundler because of the painful journey to 1.0, but it's totally proportional to the difficulty of the problem, and I think they've really nailed it for 1.0.
- ptn 16y agoI'm confused about Bundler and rvm's per-project ruby and gemsets, what's the difference?
- bradleyland 16y agoBundler works together with RVM gemsets. If you have an active RVM gemset, Bundler will use it. The goal of Bundler is portability between deployments. It answers the question: "How do I package up everything required to run this app so I can deploy it anywhere."
- wuputah 16y agoIn my opinion, Bundler deprecates the need--or at least the need in most cases--to use gemsets. They are still a great feature to give you great control over exactly which gems are installed for testing purposes, but once you switch your applications to using Bundler, there's rarely a need to keep each project in its own gemset. What Bundler does is establish a container for all gems (and ONLY those gems) that your application needs to run. This is much like an automatic, application-specific gemset. It also solves the difficult problem of resolving your applications dependencies, locking your gems to a particular set of dependencies to assure consistency across environments and deployments. This is a very critical feature and really showed its ugly head when Rails 2.3.8 was released. Users suddenly found their projects breaking because one gem would load the latest version of activesupport installed on their system (e.g. activesupport-2.3.8) while Rails would require exactly version 2.3.5. Bundler solves this problem by determining that 2.3.5 is the correct dependency and locks the application to only load that version. It is exactly because of this feature that gemsets are now rarely needed. A large repository of gems will no longer cause you pain and hassle, as Bundler will pick and choose (or install) whichever gems you need to run the project. No more manual management of gemsets. Hooray!
- dasil003 16y agoIn short, rvm operates at the individual developer level, and bundler at the application level. rvm gemsets are still a great way to have a general purpose Rails 2 setup and Rails 3 setup on the same machine. Granted, if you only work with applications that use Bundler, it's totally unnecessary. But often you will have legacy apps, or you just want to hack around quickly on some code without set up a Gemfile.