Re: [MacRuby-devel] trunk status update

2009-11-17 Thread Eloy Duran

Nice. Great work!

On Nov 17, 2009, at 3:23 AM, Laurent Sansonetti wrote:


Hi guys,

It has been a little bit more than a month since the last status  
update, which was for beta1. It is now time to release beta2. I am  
preparing the release at the moment as well as a blog article, but  
here are the changes.


Enjoy! The final 0.5 release is not far at this point :-)

Highlights:

- rdoc, ri, rack, sinatra are now working.
- DTrace probes are available. Same as in MacRuby 0.4.
- BigDecimal, OpenSSL and JSON support (experimental).
- macrubyc: support for building fat binaries (using the --arch  
argument).
- New tool: macruby_deploy, to help you deploying a MacRuby  
application, by ahead-of-time compiling its source code and  
relocating the MacRuby framework inside the application bundle. One- 
click Xcode targets provided.
- Lots of bugs fixed, especially related to compatibility, thread- 
safeness and memory/resource leaks.


Details:

- Added JSON support, based on the yajl library (experimental).
- Fixed a bug when compiling super without arguments, where the  
method's &block wouldn't be passed.
- Fixed a bug during singleton class creation where the super class  
would not have any outer.
- Fixed a bug in the VM method preparation routine when the current  
VM class would be a metaclass.

- The compiler now honors the current VM class when compiling outers.
- Fixed a crash in String#[] when called with 2 arguments and when  
the last one is negative.

- Fixed Object#class to never return singleton classes.
- Fixed a parsing crash that would happen if a magic comment  
includes an encoding that we do not recognize.

- Fixed Object#inspect output to not include extra characters.
- Fixed #method_missing to be called with Ruby-like selectors.
- Do not install special methods on singleton classes.
- Fixed several module mixin bugs.
- Fixed a bug in Proc#to_s to print lambda status.
- Implemented 1.9 lambda syntax (->).
- Now sanitizing method names before passing them to the added/ 
removed/undefined callbacks.
- When mixing a class with a module, make sure to JIT methods that  
already exist in the target class.
- Fixed a bug when #method_added would be called during method  
compilation and not registration.

- Fixed Module#<= to honor included modules.
- Optimized IO#gets to read from the IO cache if available.
- Optimized Hash#each to be slightly faster.
- Optimized Hash#[] to not dispatch #default if it's unnecessary.
- Optimized #[] and #[]= dispatches for Hash.
- Optimized #respond_to? by caching results.
- Fixed a bug in the compilation of global variable assignments  
where potential exceptions would not properly be intercepted.

- Bring back #[], #[]= and #<< optimizations (oops).
- Optimized returns from non-ensure-scoped and non-Proc blocks.
- void-returning objc calls now return the receiver instead of nil.
- Fixed a bug in Kernel#respond_to? to avoid recursive calls.
- Fixed a bug in YAML objects deserialization, where #new would be  
called instead of #alloc.
- When changing the visibility of a method that is included in  
classes, make sure the new flags are recursively applied.
- When registering a new method, if the given class also responds to  
the arity-1+1 selector let's make it unavailable, to fully conform  
to the way Ruby behaves.
- Fixed a bug in the compilation of super without argument where the  
scoping method has arguments with default values.

- Fixed AOT compilation of backquote with a literal string.
- return-from-block is now active for further dispatch calls inside  
the same method

- Do not return-from-block from lambdas (to mimic MRI 1.9).
- Implemented VM cleanup.
- Fixed Thread resource leaks.
- Unregister VM objects created from GCD pthreads.
- Make sure Thread and GCD blocks are detachable (that they won't be  
cached and that their dvars will be preserved when leaving the scope  
where the blocks have been created).

- Merge to recent CRuby readline.
- Implemented ObjectSpace finalizers (experimental).
- Fixed Pointer to work with ^v (void *) type.
- Fixed a const lookup bug when rb_define_module() wouldn't set a  
default outer.

- Call Symbol#to_s if #description is called, instead of #inspect.
- Better MRI 1.9 C API compatibility.
- Added OpenSSL extension (experimental).
- Added macruby_deploy, a tool to help compiling AOT a MacRuby app  
and relocating MacRuby.framework inside it. Updated "Embed MacRuby"  
Xcode target and added "Compile" Xcode target.
- Fixed a x86-64 ABI conformance bug where arguments should be  
passed by reference when there aren't enough registers to hold all  
of them.

- Create -copyWithZone: on every new Object-based Ruby class.
- Fixed a bug when break/next/redo statements inside exception  
handlers would not properly end potential landing pads.

- Fixed sprintf's %p to pass the object address.
- Fixed a bug in IO.popen.
- Added support for defined? on any unhandled expression.
- Swapped our custom Set implementation by th

[MacRuby-devel] MacRuby 0.5 beta 2

2009-11-17 Thread Laurent Sansonetti

Hi,

The first beta release of MacRuby 0.5 is out! I prepared some notes  
here:


http://www.macruby.org/blog/2009/11/17/macruby05b2.html

The goal is to go through a few beta releases before releasing the  
final 0.5.


Please give it a try and report to us bugs & feedback :)

Laurent

___
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


[MacRuby-devel] [MacRuby] #439: Beta 2 should support Sinatra, but can't install it.

2009-11-17 Thread MacRuby
#439: Beta 2 should support Sinatra, but can't install it.
-+--
 Reporter:  kieran...@…  |   Owner:  lsansone...@…
 Type:  defect   |  Status:  new  
 Priority:  blocker  |   Milestone:  MacRuby 0.5  
Component:  MacRuby  |Keywords:  beta 2, sinatra  
-+--
 So beta 2 reports support for rake, rack, and sinatra  (which is great).
 However, using the latest macruby trunk, I'm getting errors for 'macgem
 list' and 'macgem install sinatra'

 Too much output to put here so I've pastied the output.

 http://www.pastie.org/703754

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


Re: [MacRuby-devel] [MacRuby] #439: Beta 2 should support Sinatra, but can't install it.

2009-11-17 Thread MacRuby
#439: Beta 2 should support Sinatra, but can't install it.
-+--
 Reporter:  kieran...@…  |   Owner:  lsansone...@…
 Type:  defect   |  Status:  new  
 Priority:  blocker  |   Milestone:  MacRuby 0.5  
Component:  MacRuby  |Keywords:  beta 2, sinatra  
-+--

Comment(by kieran...@…):

 Some debug info to hopefully help find the issue. Note I use REE as my
 ruby. Maybe some conflict there?


 Version 10.6.2  (Snow Leopard)
 2.4 GHz Intel Core 2 Duo
 2 GB 667 MHz DDR2 SDRAM

 % uname -a
 Darwin Kieran-Pilkingtons-MacBook.local 10.2.0 Darwin Kernel Version
 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386
 i386

 % gcc --version
 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5646) (dot 1)

 % /usr/bin/ruby --version
 ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]

 % which ruby
 /opt/ree-latest/bin/ruby

 % ruby --version
 ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.0.0], MBARI 0x6770,
 Ruby Enterprise Edition 20090928

 % /Developer/usr/bin/llvm-g++ --version
 i686-apple-darwin10-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build
 5646) (LLVM build 2206)

 % llvm-config --version
 2.7svn

 % cd ~/Other/MacRuby/llvm-trunk; svn info
 Path: .
 URL: https://llvm.org/svn/llvm-project/llvm/trunk
 Repository Root: https://llvm.org/svn/llvm-project
 Repository UUID: 91177308-0d34-0410-b5e6-96231b3b80d8
 Revision: 82747
 Node Kind: directory
 Schedule: normal
 Last Changed Author: djg
 Last Changed Rev: 82743
 Last Changed Date: 2009-09-25 12:57:30 +1200 (Fri, 25 Sep 2009)


 rake spec:ci   =>  http://pastie.org/703771
 rake bench:ci  =>  http://pastie.org/703775

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


Re: [MacRuby-devel] [MacRuby] #439: Beta 2 should support Sinatra, but can't install it.

2009-11-17 Thread MacRuby
#439: Beta 2 should support Sinatra, but can't install it.
-+--
 Reporter:  kieran...@…  |   Owner:  lsansone...@…
 Type:  defect   |  Status:  new  
 Priority:  blocker  |   Milestone:  MacRuby 0.5  
Component:  MacRuby  |Keywords:  beta 2, sinatra  
-+--

Comment(by vincent.isamb...@…):

 Just do a rake clean:ext and rebuild:
 {{{
 rake clean:ext
 rake
 sudo rake install
 }}}

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


Re: [MacRuby-devel] [MacRuby] #439: Beta 2 should support Sinatra, but can't install it.

2009-11-17 Thread MacRuby
#439: Beta 2 should support Sinatra, but can't install it.
-+--
 Reporter:  kieran...@…  |   Owner:  lsansone...@…
 Type:  defect   |  Status:  new  
 Priority:  blocker  |   Milestone:  MacRuby 0.5  
Component:  MacRuby  |Keywords:  beta 2, sinatra  
-+--

Comment(by kieran...@…):

 Awesome. Working now, but the app can't find sinatra from rubygems:

 require 'rubygems'
 require 'sinatra'

 -> cannot find sinatra

 I guess the next blog post will cover that?

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel