= RubyMotion 0.69 =

  * Removed the samples from the distribution. They will be online on GitHub.
  * Removed the documentation from the distribution. It will be online in the
    website's developer center.
  * Removed the testflight/cocoapods files. They will be online as gems.
  * RubyMotion is now installed into /Library/RubyMotion.
  * This is very likely the last release before RubyMotion launches. Thanks to
    everyone who beta-tested it :-)

= RubyMotion 0.68 =

  * Added a new sample, trollify, that demonstrates gestures, image editing,
    camera picture acquisition and interacting with the photo library roll.
    The code was graciously contributed by Johannes Fahrenkrug.
  * Fixed a crash that could happen in the REPL when working on an application
    that makes use of CoreImage, because CoreImage bundles its own version of
    the LLVM JIT with all symbols exposed.

= RubyMotion 0.67 =

  * Fixed a regression in the compiler introduced by new changes in the
    previous build.

= RubyMotion 0.66 =

  * Added support for calling variadic functions or methods. Currently, the
    number of varargs must not be higher than 15.
  * Improved the mustache sample with swipe gestures, in order to browse the
    builtin photos.

= RubyMotion 0.65 =

  * Changes for the new installer.

= RubyMotion 0.64 =

  * Added a new sample code, gesture_table, which demonstrates a table view
    that can be manipulated with gestures (similar to the Clear iOS app).
    Thanks Josh Ballanco for contributing the initial version of the code.
  * Added a new sample code, mustache, a port of the famous MacRuby sample
    to iOS. Demonstrates CoreImage's face detection feature. Thanks to Josh
    Ballanco for the matrix algebra.

= RubyMotion 0.63 =

  * Changed #methods and others to not return Objective-C methods whose names
    start with an underscore ('_') character. The REPL won't list them.
  * Fixed the REPL to support calling C functions or Objective-C methods with
    calling stubs not already precompiled in the project.
  * Changed the REPL to save the value of the last evaluated expression in the
    '_' local variable.
  * Improved the REPL to support class definitions, method definitions and
    exception handlers.
  * Fixed a bug in the REPL where ^C would cause a deadlock and not exit the
    process as it used to.

= RubyMotion 0.62 =

  * Fixed a bug when `rake spec' would start the REPL.
  * Added persistent REPL history.
  * Changed the REPL to not exit with an error status in case of a broken pipe.
  * Changed `motion create' to generate a .gitignore file, which currently
    lists `build' and `.repl_history'.
  * Added completion functionality to the REPL. Use the <tab> key to complete
    methods, constants, instance variables and local variables.

= RubyMotion 0.61 =

  * Fixed a bug when doing `rake clean' on a project with vendored projects.
  * Fixed a bug when the terminal echo could be off after an app crashes in
    the simulator, due to the REPL's readline.
  * Changed the compiler to not save local variables when creating blocks.
  * The REPL now exposes special methods: #repl, #quit, #sessions and #help.
    Use #help to know more.
  * Fixed `motion support' to properly collect the version of Xcode for
    installations in /Applications.
  * Fixed the REPL to refresh the prompt in capture mode using a different
    technique, to make it work in iTerm.

= RubyMotion 0.60 =

  * Fixed various bugs in the REPL (also, make it work under Snow Leopard).

= RubyMotion 0.59 =

  * Changed `motion create' to now print the files it creates on screen.
  * Changed #methods and others to now return Objective-C selectors by default.
  * Added a REPL, which automatically starts with the simulator. The REPL
    is implemented as a shared library and loaded at demand in the simulator,
    to make sure a RubyMotion app built for the simulator remains identical
    to an app built for an iOS device. The REPL is asynchronous, it does not
    block the simulator, however, expressions are forced to be evaluated in
    the main thread (to allow UIKit calls). The REPL can capture views if you
    maintain the Command key then click on a view in the simulator window.
    The REPL is a work-in-progress.

= RubyMotion 0.58 =

  * This build contains changes non visible to end users.

= RubyMotion 0.57 =

  * Fixed a bug in the cocoapods integration where custom cflags would not
    properly be taken into account (thanks Eloy).
  * Fixed the compilation of vendored project source files to use clang/clang++
    instead of gcc, since only the former supports ARC (thanks Eloy).

= RubyMotion 0.56 =

  * Fixed a regression in the testflight integration.
  * Added support for Snow Leopard (OSX 10.6).

= RubyMotion 0.55 =

  * Added CocoaPods integration. It will be gemified when RubyMotion goes
    public, currently, you can do `require 'motion/project/cocoapods' in your
    Rakefile, then `app.pods { dependency 'JSONKit' }' in order to use the
    JSONKit library. CocoaPods must be installed and set up before use. There
    are still bugs when covering header files with certain pods.
  * Added support for iOS 5.1.

= RubyMotion 0.54 =

  * Fixed a bug in the installer where empty resources directories in some
    samples would not be created.

= RubyMotion 0.53 =

  * Added `motion support', which allows developers to submit support tickets.
  * Added missing sections in the Runtime guide: Reading Objective-C
    Interfaces, Shortcuts and C function pointers and Blocks.

= RubyMotion 0.52 =

  * Added a new sample, locations, which demonstrates CoreData.
  * Fixed `motion update' to use SSL when transmitting the license key. The
    server will stop honoring non-SSL requests by the next build.
  * Fixed `motion create' to now generate app/app_delegate.rb instead of
    app/main.rb.
  * Cleaned up a bit the samples.
  * Split the reference manual into 3 separate documents.
  * Fixed a bug when the calling stub of a retyped property could not be found
    at runtime, because the target abstract class doesn't actually define the
    message (ex: UIBarItem's setEnabled:).
  * Fixed a bug when the runtime could not perform the -hash selector because
    the calling stub wasn't precompiled.
  * Fixed `rake simulator debug=1`' to work with Xcode 4.3.

= RubyMotion 0.51 =

  * Forgot to bundle the ctags config file. `rake ctags' should work now.
  * Fixed the VM build to use llvm-gcc and not clang again. This allows the
    bundled interpreter to launch and do syntax check.

= RubyMotion 0.50 =

  * Fixed a bug when compiling calls to certain structures (such as
    CMTimeRange) which may contain anonymous types when used from APIs defined
    in other frameworks (such as AVFoundation).

= RubyMotion 0.49 =

  * The project build system will now check once a day if a new version of
    RubyMotion is available for download, and print a message accordingly on
    the terminal. The check only happens when you are using RubyMotion.

= RubyMotion 0.48 =

  * Added support for Xcode 4.3. Previous Xcode releases in /Developer can be
    safely removed. There is no need to install the command-line tool package.
    Support for iOS 4.3 is temporarily removed, it will be added back as well
    as support for 5.1 in an upcoming build.
  * Removed the `platforms_dir' project variable, added `xcode_dir'.
  * Added a `--check' optional argument to `motion update' that will check if
    a new version of RubyMotion is available, and exit with 1 if yes, 0 if no.
  * Fixed `motion update' to show changes for all versions since the previous
    installed version. 

= RubyMotion 0.47 =

  * Added a `rake ctags' task that generates a `tags' file inside the project
    directory, containing the symbols of all frameworks and vendor projects
    used by the project.
  * Fixed the build system to fail when building a vendor project that does not
    create at least one .a library.
  * Fixed the build system to fail with a proper error message in case the
    current version of Xcode is below 4.x. Otherwise, the build fails later
    during link because of a missing C++ ABI symbol.

= RubyMotion 0.46 =

  * Implemented the `motion activate' and ` motion update' commands.
  * Removed the docset from the main distribution (will be online).
  * Fixed the `rake device' task to only depend on
    `rake archive:development' (thanks Hugues).

= RubyMotion 0.45 =

  * The `rake archive' is now a shortcut to `rake archive:development'
    and `rake archive:release'. The later builds the project, removes all
    symbols, and also creates an `.xcarchive' file that opens with Xcode 4,
    and can be used for an App Store submission.
  * The `rake deploy' task has been renamed `rake device'.
  * Updated doc/ReferenceManual.html to follow these changes.
  * Fixed a bug in the TestFlight integration where the optional
    distribution_lists key wasn't actually optional (thanks Matt).
  * Fixed a couple bugs in the internal Array erase routine, where some objects
    could potentially leak or be double-released.
  * Fixed a bug where the regular expression global backref object could be in
    some cases prematurely released.

= RubyMotion 0.44 =

  * Added support for C unions (for example, GLKVector3). Unions must be
    created using methods or functions provided by iOS (#new won't work).
    Unions behave like structures, and the compiler will only expose the
    first variant/field.
  * Better error reporting when the compiler fails to precompile a stub.
  * Disables the TestFlight SDK when running the app in the simulator.

= RubyMotion 0.43 =

  * Added support for custom fonts. Introduced a `fonts' project config
    variable which defaults to the list of *.ttf and *.otf files in the
    resources directory. The `fonts' variable is then used when generating
    the bundle property list.
  * Fixed a bug in the build system where an application compiled in spec
    mode wouldn't properly install in the Simulator due to differencies in
    the internal property lists.
  * Fixed a bug when messaging an Objective-C method implementing forwarding
    through a helper wouldn't work (and trigger method missing).
    Example: `textField.autocapitalizationType = ...'.
  * Fixed a bug in Array#delete and friends, where erased objects would be
    destroyed before returned back to the caller.

= RubyMotion 0.42 =

  * Added builtin support for TestFlight. It will be a gem once RubyMotion
    launches. Basic documentation can be read in the file:
    /Library/Motion/lib/motion/project/testflight.rb
    (Thanks to Hugues Lismonde for the help.)
  * Added the possibility to vendor 'static' projects (which contains
    static libraries and header files). Used by the TestFlight support.
    See the reference manual. (Thanks to Hugues Lismonde.)
  * Fixed a bug in the compiler when attempting to precompile an Objective-C
    method definition stub that doesn't have the same arity as the Ruby
    definition.
  * Fixed memory leaks (IO).

= RubyMotion 0.41 =

  * New memory management system. Similar to ARC in design, uses the existing
    autorelease pool infrastructure. No "real" GC. Works for CF objects, no
    need to use CFRetain/CFRelease.
  * Fixed a memory smasher in the dispatcher.
  * Fixed a (pretty rare) crasher in the compiler.
  * Fixed a bug in the simulator launcher, where environment variables would
    not properly be propagated to the simulated app.
  * Fixed a bug in the dependencies system, again.
  * Fixed a problem when using attr_reader/accessor to override an Objective-C
    method. Because the static compiler doesn't know the proper signature
    ahead of time, we would be crashing later on. We now print a proper error
    message and abort the program.

= RubyMotion 0.40 =

  * Fixed a bug where multiple provisioned devices or application identifiers
    in the provisioned profile would not be taken into account (thanks Matt
    Aimonetti for the fix).
  * Fixed a bug where the deployment_target could incidentally be nil and
    break the build task when generating the Info.plist file.

= RubyMotion 0.39 =

  * Fixed the build system to work with Ruby 1.9.3 (lulz!).
  * Fixed a bug in the build system regarding file dependencies.
  * Added a `deployment_target' config setting, which can be used to specify
    which iOS version the compiler should target. It is different from
    `sdk_version' which specify which SDK version installed the compiler will
    use. The default value of `deployment_target' is `sdk_version'.
  * Fixed the build system to use `xcode-select -printPath' to determine
    the default `Platforms' directory (where SDKs are installed).

= RubyMotion 0.38 =

  * Fixed the default provisioning profile to be one of those Xcode generates
    by default (iOS Team Provisioning Profile).
  * Fixed a couple bugs in the build system regarding file dependencies.
  * Fixed the build system to work with Ruby 1.9.2.

= RubyMotion 0.37 =

  * Improved the build system to automatically deal with framework dependencies.
    For example, if you're specifying 'Foundation' in app.frameworks, there is
    no need anymore to specify 'CoreFoundation'.
  * Added support when passing Bignum objects to Objective-C types.
  * Improved the `build' task to run the Ruby files compilation tasks
    concurrently based on the number of CPU threads of the machine (by reading
    the `machdep.cpu.thread_count' sysctl variable). This improves the build
    time of projects having a significant number of files. It is possible to
    override the number of tasks that will run in parallel by setting the
    `jobs' environment variable. For example, to force files to be compiled
    sequentially: `rake jobs=1'.

= RubyMotion 0.36 =

  * Fixed a bug in the compiler where calls to Objective-C methods returning
    C pointers would not be properly compiled.
  * Fixed a bug in the compiler where calls to internal builtin Objective-C
    extensions (such as Dispatch::Object#dispatch_object) would not be
    properly compiled.
  * Fixed the message of exceptions when running on the device, since we can't
    symbolicate at runtime. Currently showing the list of callstack addresses.
  * Fixed the backtraces of Objective-C exceptions.
  * Added the generation of .dSYM bundles during build.
  * Fixed uncaught exceptions to actually crash the process instead of exiting,
    to make sure a crash report will be generated.
  * Fixed exception backtraces to look more like those from CRuby. Removed 
    class name from debugging metadata as it causes problems in Ruby.

= RubyMotion 0.35 =

  * Added symbolication support. Exception backtraces should have the file/line
    of each entry (simulator only). Also, Ruby stack trace entries in crash
    reports now show the class, method, file and line information (zomg!).

= RubyMotion 0.34 =

  * Fixed a bug where certain informal protocol method calls would not be
    properly pre-compiled.
  * Fixed the build system to work with previous versions of rake, such as the
    one that ships with OSX.

= RubyMotion 0.33 =

  * Improved the build system. More robust. Smarter (won't try to perform
    unnecessary tasks). More user-friendly output by default (pass `-v' to see
    the command-line invocations as before).
  * Fixed a compilation bug of structure constants (such as CGRectZero).
  * Fixed `rake deploy' to fail with a proper error message in case the device
    connected over USB is not provisioned (not mentionned in the project's
    provisioning profile).
  * Fixed `rake spec' to fail with a proper error message in case there are no
    spec files to run.
  * Fixed a race condition bug in `rake spec' when the specs would run and quit
    before the simulator has a change to attach itself to the app. 

= RubyMotion 0.32 =

  * Fixed a bug where canceling the `rake simulator' task with ^C would not
    properly terminate the simulator session.
  * Added basic spec framework integration. See doc/ReferenceManual.html for
    more information.

= RubyMotion 0.31 =

  * Fixed the build system to avoid copying resource files each time.
  * Fixed a bug where some class method calling stubs would not be properly
    precompiled, such as NSTimer
    +scheduledTimerWithTimeInterval:target:selector:userInfo:repeats:.
  * Added a `prerendered_icon' config setting, which, when set to true,
    disables the reflective shine effect applied by default on the icons
    files (thanks Watson).
  * Changed the `simulator' task to honor the `device_family' environment
    variable, which can be used to force the device family to be used by the
    simulator when running a universal app. Values can be 'iphone' or 'ipad'.
    (Thanks Matt Aimonetti for the idea.)
  * Fixed the `simulator' task to no longer remove the app sandbox directory
    by default. Instead, the `clean' environment variable must be provided.
    (For example, `$ rake simulator clean=1').

= RubyMotion 0.30 =

  * Fixed a bug where deploying large applications would fail during install.
  * Fixed a bug where boolean values (true/false) would not be allowed in the
    `plist' Hash (thanks Matt Aimonetti).
  * Merged `tableview' and `mapview' samples into a new sample: `beers', which
    also demonstrates the use of a tab bar controller and webview.
  * Fixed a bug in the build system where old resource files, that have since
    been deleted from the project, would still be present in the app bundle.
  * Fixed the `simulator' task to empty the app sandbox directory before
    running the simulator, to make sure old resource files will not be present.

= RubyMotion 0.29 =

  * Improved some error messages.
  * Added support for CFTypes. Before, nil values would be returned instead.
  * Added support for C-level blocks and function pointers arguments.
  * Fixed a bug when trying to retrieve compiled stubs for method types that
    include type modifiers (like `const'). Example: NSValue's valueWithPointer:.
  * Fixed a bug when the build system would fail when attempting to copy
    resource files, if resources_dir does not exist.

= RubyMotion 0.28 =

  * Fixed a bug when using APIs dealing with pointers to anonymous C structs.
    Example: AVFoundation's copyCGImageAtTime:actualTime:error:.
  * Fixed a bug in the build system when copying resource files into the app
    bundle, where directories inside resources_dir would not be copied.
  * Fixed the plist generator to generate properly-indented plists.
  * Updated doc/ReferenceManual.html to track the changes above.
  * Added the `libs' config setting, the list of libraries to link against.
    Empty by default, can be used in case a project requires a specific C
    library, for example libz.dylib.
  * Added the `scheme' and `products' keys of `vendor_project'.
  * Fixed a bug where the `xcodeproj' key of `vendor_project' would not be taken
    into account.

= RubyMotion 0.27 =

  * Added support for most iOS frameworks.

= RubyMotion 0.26 =

  * Updated doc/ReferenceManual.html to track the new changes.
  * Added the `entitlements' config setting, which exposes the
    Entitlements.plist file as a Hash object that can be changed.
  * Added the `seed_id' config setting, the provisioning app identifier.
  * Improved the build system so that if the build_dir cannot be created, a
    temporary build directory will be used instead. This can happen when trying
    to build a project on a read-only directory.
  * Fixed a bug where resource files would not be copied if the default rake
    runs with Ruby 1.9.
  * Added a new key to `vendor_project' with :xcode: `headers_dir'. Should be
    set to the path that contains headers files.

= RubyMotion 0.25 =

  * Fixed regressions in the build system.

= RubyMotion 0.24 =

  * Updated doc/ReferenceManual.html to track the new changes and also to
    mention the `files_dependencies' config setting.
  * Added the `info_plist' config setting, which exposes the Info.plist file as
    a Hash object that can be changed (for advanced settings).
  * Added the `identifier' config setting, reverse DNS name for an app.
  * Reorganized the rake interface. Existing projects should migrate from
    `motion/rake' to `motion/project', and from `Motion::App' to
    `Motion::Project::App'.
  * Refined support for vendor libraries.

= RubyMotion 0.23 =

  * Added basic support for vendor libraries. See doc/ReferenceManual.html for
    how it works.

= RubyMotion 0.22 =

  * Added the `no_continue' environment variable for `rake sim debug=1'.
  * Fixed a bug when retrieving some C constants (wrong pointer dereferencing).
  * Fixed a couple bugs when compiling setter methods (/^set[A-Z]/).
  * Added support for QuickLook.framework.

= RubyMotion 0.21 =

  * Renamed the `package' rake task to `archive'.
  * Fixed the build system to use a different build directory per SDK version.
  * Added support for QuartzCore.framework.
  * Fixed a crash when attempting to freeze certain objects (associative
    reference assertion).
  * Better tweets sample code (thanks Johannes Fahrenkrug).
  * Added support for attr_*.
  * Fixed a crash when converting int64 CFNumbers into Ruby types.

= RubyMotion 0.20 =

  * Fixed misc GC bugs.
  * Added tweets sample code.
  * Added reference manual (doc/ReferenceManual.html).

= RubyMotion 0.19 =

  * Added support for app icons. Icon files can be created and copied into the
    resources directory, then their filenames can be added to app.icons.
  * Validate given sdk_version config variable.

Changelog not available for 0.18 or below.
