Jump to content

History of Xcode

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Unforgettableid (talk | contribs) at 04:04, 28 April 2006 (paste in). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

This is a version history of Xcode, Apple Computer's innovative IDE.

2.2.1

Xcode 2.2.1 was released on January 10, 2006 and included several updates:

  • Bug fixes; selected fixes were made in the Xcode IDE, cctools, debugger, compiler.
  • The 10.4u SDK updated for development with Mac OS 10.4.4.
  • CHUD updated to version 4.3.0.

2.2

Xcode 2.2 was released on November 10, 2005. It included hundreds of bug fixes and several enhancements to the IDE and its underlying tools. Version 2.2 requires Mac OS X version 10.4.0 or later and can create programs that run on version 10.2.8 and later, including Intel-based Macintosh computers.

Notable changes and additions in Xcode 2.2 include:

  • GCC 4.0.1: many improvements in code generation and correctness
  • Improved Distributed Builds: better scheduling and error handling
  • Distcc is started as a system launch service
  • New Target contextual menus items: control-click on one or more targets to build or clean
  • Separate PCH Symbols for smaller binaries and faster link times
  • Essential Symbols for faster link times
  • Ability to disallow ZeroLink to aid in deploying debug versions of code
  • "Attach" in Xcode debugger to externally-launched apps, and auto-attach on crash
  • Breakpoint Actions support gdb expressions.
  • Executables support build setting expansion

2.1

Xcode 2.1 was released on June 6, 2005, at WWDC 2005.

  • Supports the creation of universal binaries for PowerPC and Intel architectures on Mac OS X v10.4.1 using Mac OS X SDK support.
  • WebObjects developer tools included with the Xcode Tools as an optional install.
  • EOModels for Enterprise Objects can be edited within Xcode with a new EOModeler plugin that integrates with the Core Data modeling tools.
  • The project file format is now much more readable and less prone to SCM conflicts. It also supports the new Build Configurations feature. Because of the magnitude of the changes, the project file extension is changed in Xcode 2.1 to ".xcodeproj". Older versions of Xcode will not read.xcodeproj files, but Xcode 2.1 can convert older project files to.xcodeproj format.
  • Build Styles replaced by Build Configurations, a more "what-you-see-is-what-you-get" approach to target settings. You can set per-configuration settings directly in the target's inspector, and subprojects are built with the same build configuration as the master project.
  • Built products from different configurations are now built in per-configuration build directories, and can even have different product names per-configuration. That means that building your Release build doesn't overwrite your Debug build any more.
  • A build configuration can be based on a build configuration file, a text file that provides base settings for one or more configurations. This means that your settings can be viewed, edited, searched, committed to SCM, and even compared as text files.
  • Dependency analysis is now much more reliable. You don't need to clean before building as often, and files won't be recompiled unnecessarily.
  • You can configure targets and projects to use Shared Precompiled Headers to minimize the building of precompiled headers.
  • Xcode now supports Preprocessing Info.plist files to perform macro expansion and substitution using common header files.
  • You can now create targets in your projects that perform Unit Testing of other built products at build time. Using test frameworks for C, C++, and Objective-C, you can report test failures and regressions in newly-built code at the time you build it.
  • The ability to drag and drop items in Xcode is significantly enhanced. You can now drag any file or folder into any build setting that expects a file path; drag a target into the Target Dependencies list of any aggregate target; and drag groups or file references into build phases.
  • Distributed builds have been updated so that compile servers only allow remote execution of specific programs. The list of programs that a compile server will allow is contained in /private/etc/compilers.
  • There are many refinements and additions in the Xcode user interface that will be familiar to users of other IDEs. There’s now a Targets tab in each file inspector to show and set what targets that file is included in. The "Built" column in the Groups and Files and Details views can now be clicked to Touch a file to cause it to be rebuilt. In the File Editor you can now Unlock a file that is locked in the file system. The Build, Preprocess, and Show Assembly Code commands now work on multiple selections.
  • The Xcode debugger now supports conditional breakpoints, breakpoint actions, and watchpoints in the debugger interface. The breakpoint actions can log a message, execute a script, speak a phrase, or visualize your program flow in a Class Model diagram.
  • Viewing variables in the debugger now has extended support for Booleans, Pascal strings, and OSType data types.
  • The debugger console now performs tab-completion of symbol names in the current context.
  • Source Code Management now uses an Online/Offline master switch (as is used in Mail) to control connecting and disconnecting from an SCM system. All SCM systems now have basic support for wrappers (project files, nibs, model files, RTFD documents, etc.).
  • The AppleScript dictionary in Xcode continues to grow, in this version adding commands to make new target, upgrade project file, and perform various SCM operations.

2.0

Xcode 2.0 was released on April 29, 2005, with Mac OS X v10.4 (Tiger).

  • Supports development for Mac OS X v10.1, Mac OS X v10.2 (Jaguar), Mac OS X v10.3 (Panther), or Mac OS X v10.4 (Tiger) using the Mac OS X SDK support.
  • Includes a new version of the GCC compiler. GCC 4.0 includes a new, faster recursive descent C++ parser that conforms to the C++ standard, state-of-art Single Static Assignment code optimization framework, auto-vectorization, and 64-bit development for C and C++ (Objective-C/C++ is not yet supported).
  • Bonjour-enabled distributed build feature farms out builds by distributing compile workload across idle desktop machines or, better, deploy a dedicated Xserve build farm to do in minutes what would take hours on any single machine.
  • Visual modeling and design features automatically create class diagrams that not only let you view, but also navigate your code.
  • Integrated Apple Reference Library provides a single search and presentation interface for all of Apple’s developer documentation, including both online documentation from Apple’s website and documentation installed on your machine.
  • Improved Java Code Sense indexing and Ant project templates.
  • Includes Quartz Composer visual programming language.

1.5

Xcode 1.5 was released in August 2004. This release added:

  • Dead-code stripping.
  • Speed improvements to included GCC.
  • Code completion for Java and AppleScript.
  • Enhanced debugger.
  • Bookmarks in documentation.

Xcode 1.5 included code generation problems. In November 2004, Apple released an update to correct these problems.