[Pyobjc-dev] Fwd: RubyCocoa 0.13.0 + RubyInject 0.1.0
Brought to you by:
ronaldoussoren
|
From: Bill B. <bb...@ap...> - 2007-11-25 17:40:07
|
Now that both RubyCocoa and PyObjC are sitting on BridgeSupport, the releases of RubyCocoa are relevant to PyObjC... So, FYI. Begin forwarded message: > Begin forwarded message: > >> From: Laurent Sansonetti <lsa...@ap...> >> Date: November 24, 2007 9:28:26 PM GMT+01:00 >> To: ruby-users <rub...@gr...> >> Subject: Fwd: [Rubycocoa-talk] [ANN] RubyCocoa 0.13.0 >> >> Begin forwarded message: >> >>> From: Laurent Sansonetti <lau...@gm...> >>> Date: November 24, 2007 4:55:08 PM GMT+01:00 >>> To: rub...@li..., rub...@li... >>> , rub...@ru... >>> Subject: [Rubycocoa-talk] [ANN] RubyCocoa 0.13.0 >>> Reply-To: rub...@li... >>> >>> Hi, >>> >>> I am honored to announce the immediate release of RubyCocoa 0.13.0. >>> >>> RubyCocoa is a Mac OS X framework that allows Cocoa programming in >>> the >>> object-oriented scripting language Ruby. In other words, it is a >>> bridge that let you access Objective-C objects from Ruby, and >>> vice-versa. >>> >>> You can learn more about RubyCocoa on our website: >>> >>> http://rubycocoa.sf.net >>> >>> A source tarball as well as binary installers for Mac OS X 10.4 and >>> 10.5 are provided. >>> >>> This is mostly a bugs fix release, addressing many critical issues, >>> but it also brings some nice enhancements. All users are >>> encouraged to >>> upgrade, and report us feedback. >>> >>> Mac OS X 10.5, Leopard, is as you can see supported by this release. >>> Installing this release using the binary installer or manually with >>> the default build parameters won't override the system version, it >>> will go in /Library while the system version is in /System. >>> >>> The release notes are following. Enjoy! >>> >>> Laurent >>> >>> New features: >>> >>> - NSArray and NSDictionary now respond to the same messages of their >>> Ruby equivalents, respectively Array and Hash. NSString responds to >>> the String messages too, except #=~ and #match. The implementation >>> is >>> fast and reliable, but respects the Cocoa semantics. The >>> #method_missing hack has been removed. >>> >>> - Added utility methods to NSRect, NSPoint, NSSize and NSRange. >>> >>> - Added useful inspect methods to NSString, NSNumber, NSArray, >>> NSDictionary, NSCFBoolean and NSDate. Added pretty print support to >>> NSString, NSArray, NSDictionary. >>> >>> - Added a #to_ns method to Array, Hash, String, Numeric, TrueClass, >>> FalseClass, Time, to convert them to their Cocoa equivalent. >>> >>> - Added ObjcPtr#cast_as(encoding) for more generic casting from >>> void*. >>> >>> - Added Leopard-only samples. >>> >>> Bugs fixed: >>> >>> - Fixed various memory leaks in the RubyCocoa initialization code, >>> and >>> in the bridge support parsing code. No memory should now be leaked >>> during initialization. >>> >>> - Improved the ruby obj -> ocid and ruby obj -> SEL conversions >>> performance. >>> >>> - Fixed a crash when passing a pointer to an ObjC object, then >>> trying >>> to convert it as a Ruby object after the API call, but crashing >>> because the pointer wasn't touched by the API. Now preparing >>> passed-by-reference pointers to NULL. >>> >>> - Fixed an error, "Please install again" on reinstalling using the >>> binary installer. >>> >>> - Do not translate 'set' methods that get more than one argument. >>> >>> - Create the slave objects at demand, if they do not exist yet. This >>> fixes a bindings / CoreData problem in 10.5. >>> >>> - Now resetting the context autorelease pools on every thread >>> restore. >>> >>> - Fixed a bug when an object that was being allocated from a Ruby >>> thread was still in the cache while the thread was killed, resulting >>> in a corrupted cache. >>> >>> - Make sure we do not cache CF-based objects. >>> >>> - Fixed a circular retain cycle from ObjC objects allocated from an >>> NSObject-based Ruby class, resulting in a leak of both the ObjC >>> object >>> and its Ruby proxy. >>> >>> - Hook [copyWithZone:] and reset the slave object so that every ObjC >>> object has a different slave object. This fixes a crash when >>> releasing >>> a slave object that could be shared by multiple ObjC objects. >>> >>> - #objc_send will now pass a frozen selector to the core, where >>> underscore characters won't be transformed as ':'. This is a >>> convenience utility to call ObjC methods that contain underscores as >>> part of their selector, like for example [__rbobj__]. >>> >>> - Better OvMix retain cycle: if an OvMix object is created from >>> Ruby, >>> we by default don't retain its Ruby proxy, and start tracking >>> retain/release messages, and appropriately re-retain/re-release the >>> Ruby proxy. >>> >>> - Removed the old __slave_nsobj__ ivar hook. Now all pure-Ruby >>> objects >>> will be wrapped in an autoreleased RBObject. >>> >>> - Fixed a bug, when ObjC arguments that were passed from an ObjC >>> closure to Ruby were not retained, as they should. Added a test >>> case. >>> >>> - Better facility (10.5 only) that dispatches messages from >>> threads to >>> the thread where RubyCocoa was initialized. It was previously >>> assuming >>> that RubyCocoa was run in the main thread, which may not be always >>> true (Ruby could be ran in a different thread). >>> >>> - Now allow the send the of 'new' message to any ObjC class that >>> will >>> respond to it. Keep the old behavior (raising an exception) for >>> classes that don't implement new. >>> >>> - Added threading support for 10.5. >>> >>> - Updated metaconfig and Rakefile to use '--gen-bridge-support=no' >>> on 10.5. >>> >>> - New metaconfig option --sdkroot. Fix setup error >>> --macosx-deployment-target=10.4 on 10.5. >>> >>> - Fixed String#to_nsstring for 10.5. >>> >>> - String#nsenconding, to_nsstring, to_nsmutablestring are now >>> deprecated. Developers are encouraged to switch to #to_ns. >>> >>> - Fixed a bug, calling to_ns for a Ruby String which has illegal >>> utf-8 >>> sequences caused a bus error. >>> >>> - Avoid an infinite loop when creating the slave proxy, which >>> could be >>> caused by an attempt to pass an object to Objective-C in its >>> #initialize method. >>> >>> - sample/Scripts/darkroom.rb: fix SEGV of darkroom.rb on 10.5. >>> >>> - Added CoreData.define_wrapper_for_entity(). This feature was >>> part of >>> CoreData.define_wrapper(). Removed "to_a" for NSArray in CoreData >>> module. >>> >>> - Load the libSystem.bridgesupport file if it exists (10.5 only). >>> >>> - rb_nibtool: Fixed a crash when the provided Ruby script only >>> defines >>> actions but no outlets, or vice-versa. >>> >>> - rb_nibtool: Fixed bug where #each was called on nil if there were >>> either no actions OR outlets in the class. >>> >>> - rb_nibtool: Fixed bug where a new class from a source file would >>> not >>> show up in the class list in IB because the superclass is unknown to >>> the classes list in IB. If the superclass const is not found it will >>> default to NSObject. This change is not effective when rb_nibtool is >>> used with rubynode. >>> >>> - rb_nibtool: Fixed problem when not detecting existing classes. >>> >>> - standaloneify: Now sets the environment variable >>> ENV['RUBYCOCOA_STANDALONEIFYING?']. This is to be able to prevent >>> code >>> from being ran when an application is being standaloneified. >>> >>> - standaloneify: Will now skip all the source files at any depth >>> in Resources. >>> >>> - gen_bridge_doc: Updated to work with the latest Apple >>> documentation and 10.5. >>> >>> - gen_bridge_doc: Fixed a bug where </i> tags weren't replaced by >>> '_'. >>> >>> - gen_bridge_doc: Added documentation for the translated bool >>> methods, >>> eg: isRunning -> running?. >>> >>> ------------------------------------------------------------------------- >>> This SF.net email is sponsored by: Microsoft >>> Defy all challenges. Microsoft(R) Visual Studio 2005. >>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >>> _______________________________________________ >>> Rubycocoa-talk mailing list >>> Rub...@li... >>> https://lists.sourceforge.net/lists/listinfo/rubycocoa-talk >> > Begin forwarded message: > >> From: Laurent Sansonetti <lsa...@ap...> >> Date: November 24, 2007 9:28:47 PM GMT+01:00 >> To: ruby-users <rub...@gr...> >> Subject: Fwd: [Rubycocoa-talk] [ANN] RubyInject 0.1.0 >> >> Begin forwarded message: >> >>> From: Laurent Sansonetti <lau...@gm...> >>> Date: November 24, 2007 8:21:17 PM GMT+01:00 >>> To: rub...@li..., rub...@li... >>> , rub...@ru... >>> Subject: [Rubycocoa-talk] [ANN] RubyInject 0.1.0 >>> Reply-To: rub...@li... >>> >>> Hi, >>> >>> I am glad to announce the first version of the RubyInject project. >>> >>> RubyInject is a Mac OS X framework that allows you to inject at >>> runtime the Ruby interpreter into any running application, using the >>> mach_star mechanism. >>> >>> It will spawn a new thread on the remote process, initialize the >>> Ruby >>> interpreter, start a new DRb server that exposes an expression >>> evaluator object, and advertises the DRb server URI on Bonjour. >>> >>> A client is provided, inject.rb, that waits on Bonjour for the DRb >>> server URI, connects to it, then either executes a given Ruby script >>> or starts an IRB session. >>> >>> RubyInject is especially useful when combined with RubyCocoa. You >>> can >>> at runtime inject RubyCocoa into an Objective-C application and >>> start >>> introspecting and messaging its objects. >>> >>> Check out the following link for more details: >>> >>> http://rubycocoa.sourceforge.net/RubyInject >>> >>> Enjoy, >>> >>> Laurent >>> >>> ------------------------------------------------------------------------- >>> This SF.net email is sponsored by: Microsoft >>> Defy all challenges. Microsoft(R) Visual Studio 2005. >>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >>> _______________________________________________ >>> Rubycocoa-talk mailing list >>> Rub...@li... >>> https://lists.sourceforge.net/lists/listinfo/rubycocoa-talk >> > |