What's new in RubyCocoa 1.2.0
Jul 28, 2014
- Improvements:
- support ruby-2.0 or later, mostly works as same as on ruby-1.8.
- we release RubyCocoa installers as separated packages for ruby-1.8/2.0. replace RubyCocoa.framework if you try to run your RubyCocoa application with OS X 10.9 buitin ruby-2.0.
- when called method is not found on an Objective-C object, RubyCocoa raises NoMethodError. (before: OSX::OCMessageSendException)
- Deprecates:
- CocoaClass#objc_export() is deprecated. use objc_method().
- OSX::NSObject#ocm_responds?() will be deprecated. use ocm_respond_to?().
- OSX::NSData#dataWithRubyString(), OSX::NSMutableData#dataWithRubyString() will be deprecated. use [NSString dataUsingEncoding:]
- Fixes:
- Fixed build errors on Yosemite DP.
New in RubyCocoa 1.1.0 (Nov 18, 2013)
- Improvements:
- Support Xcode 5 "Modules".
- Developers can disable internal Objective-C -> Ruby objects cache
- via a new global variable $RUBYCOCOA_USE_OC2RBCACHE to avoid crashes
- from inconsistency between the cache and Ruby's GC. [Experimental]
- The crash may occurs delegate of NSTableView.
- Fixes:
- Fixed standaloneify.rb error with ruby-2.0 or rubygems-2.1.
- Fixed SEGV at Object#dup for some Objective-C objects.
- Deprecates:
- Deprecated Objective-C class "RubyCocoa" in .
- developers can use RBRuntime functions to call ruby from Objective-C.
- bundleInitWithProgram:class:param: -> RBBundleInit()
- applicationInitWithProgram:argc:argv:param: -> RBApplicationInit()
- applicationMainWithProgram:argc:argv: -> RBApplicationMain()
- Deprecated NSString|String methods depends "NKF" extension.
- NSString.guess_nsencoding
- NSString.guess_encoding
- NSString.stringWithRubyString
- NSMutableString.stringWithRubyString
- String.nsencoding
New in RubyCocoa 1.0.7 (Oct 29, 2013)
- Fixed boxed Objective-C object sometimes becomes wrong type OSX::CFTypeRef in Ruby world on 10.9 Mavericks.
New in RubyCocoa 1.0.6 (Jan 3, 2013)
- Fixed some applications does not launch with 1.0.5.
- Fixed standaloneifi-ed app does not work with rubygems 1.3.2 or later.
New in RubyCocoa 1.0.5 (Oct 8, 2012)
- Improvements:
- project templates are upgraded for Xcode 4.2-4.5. you can install the templates with the following command. $ ruby /Developer/Documentation/RubyCocoa/Templates/install_templates.rb Xcode4.x
- Fixes:
- Fixed standaloneify.rb not work.
- Removals:
- osx/active_record.rb was removed.
New in RubyCocoa 1.0.4 (Aug 27, 2012)
- Fixed leaks at initializing RubyCocoa-1.0.3.
- Fixed RubyCocoa does not load bridgesupport files under nested framework,
- such as "QuartzCore.framework/Frameworks/CoreImage.framework"
New in RubyCocoa 1.0.2 (Sep 3, 2011)
- Fixed SEGV at working with NSData or Ruby byte string.
- Fixed some opaque becomes ABRecordRef.
- Fixed build error with install.rb.
- x86_64:
- Fixed SEGV passing/getting small C struct contains C array,
- such as NSDecimal.
New in RubyCocoa 1.0.1 (Oct 19, 2009)
- Improvements:
- RubyCocoa.framework built for 10.5 works on 10.6
- NSString for same string returns same hash in Ruby world.
- it enables NSString to become a key of Hash.
- refactoring build system for universal binary
- deprecate config option "--build-universal"
- introduce config option "--target-archs"
- upgrade project templates for Xcode 3.x
- Fixes:
- Snow Leopard:
- Fixed application stops with errors for thread such as
- "Assertion failed: (ctx->autoreleasePool ..."
- Fixed some errors of invocation-based undo with NSUndoManager
- x86_64:
- correct value of OSX::NSNotFound (Foudation.bridgesupport is wrong)
- Fixed debug log sometimes prints incorrect integer values
- Fixed getting values for 64-bit from bridgesupport files
- others:
- Fixed SEGV irb at `require "osx/cocoa"'
New in RubyCocoa 1.0.0 (Jul 25, 2009)
- bug fixes:
- imcompatible NSString#split
- cannot handle KVC/KVO autonotify
- KVO willChangeValueForKey/didChangeValueForKey was invoked twice
- NSBundle.bundleForClass: crashes on ruby uninitialized thread
- libffi: ffi_call( return value buffer too small)
- GraphicsContext.graphicsContextWithGraphicsPort_flipped crashes
- DLOG macro: format string should be literal
- avoid override Objective-C methods with syntax sugar methods
- crash with "[BUG] object allocation during garbage collection phase" on 10.5.7
- enhancements:
- ruby 1.8.7 ready
- crash with "[BUG] object allocation during garbage collection phase"
- infinit loop of NSArray#count and NSDictionary#count
- behavior of basic Ruby classes' methods was changed in 1.8.7
- new sample PassengerPane
- better build settings for 10.5
- support formal protocols (10.5 or later)
- rake install task: check finish of building
- rake package task: use concrete configure settings from package/config/
- misc:
- change install destination of Xcode templates (enable templates on Xcode3.1)
- add document for OSX.require_framework
- fix failure of a test, test_loadlibs()
New in RubyCocoa 0.13.2 (Feb 16, 2008)
- New features:
- New sample: Growl.
- New NSSize methods: #/, #*, # , #-
- New NSPoint methods: # , #-
- ActiveRecordSetController now allows to destroy a multiple selection.
- Bug fixes:
- Fixed a bug when direct-overriding a method in a subclass of an Objective-C class that implements the method.
- Fixed a bug when returning C array (CARY) in struct.
- Migrated from STR2CSTR() to StringValuePtr().
- Marked some local VALUE variables as volatile to make sure they will stay on stack and won't be collected by mistake.
- Made NSNumber#float? deprecated and added integer? to conform to Number#integer?.
- Fixed a bug, NSString#scan(regexp){block} passed String to its block argument. It should be NSString.
- Fixed a bug, NSString#split returned an array contains immutable NSString sometimes.
- Fixed a bug, NSArray#delete always yielded a block.
- NSNumber#to_f should use doubleValue.
- ActiveRecord: Made speed improvements in the way records in a has many association are created.
- ActiveRecord: Fixed a bug where calling #to_activerecord_proxy on the same record object would return a new different proxy object and thus resulting in a kvo error. The proxy instance is now cached in the record itself.
- ActiveRecord: Fixed bug on case-sensitive filesystems where 'FileUtils' was required instead of 'fileutils'.
- gen_bridge_doc: updated to read latest Apple docs.
- Fixed a build problem, libffi should be built always for macosx-deployment-target=10.4.
- Build process is now able to generate a release package for Tiger on Leopard.
- Cannot handle objc types with qualifiers such as (in|out|inout).
- Removed ENV['BRIDGE_SUPPORT_PATH']= debug calls in samples.
- Resume caching method arguments of objc callbacks.