| | name | history | ||||||||||||||
| message | ||||||||||||||||
| | Blender Export/ | Fix for bug where Addon would not enable [mmathias01] | ||||||||||||||
| Categories/ | - initial commit to Repository [jlamarche] | |||||||||||||||
| Classes/ | - initial commit to Repository [jlamarche] | |||||||||||||||
| GLKit Stuff/ | Cleaning up derived data [martiancraft] | |||||||||||||||
| | OpenGL ES 1.1 Project Template/ | - initial commit to Repository [jlamarche] | ||||||||||||||
| Simple OpenGL ES 1.1 example/ | - initial commit to Repository [jlamarche] | |||||||||||||||
| Simple OpenGL ES 2.0 Example/ | Cleaning up derived data [martiancraft] | |||||||||||||||
| Simple Per-Vertex Directional Lighting/ | Cleaning up derived data [martiancraft] | |||||||||||||||
| | Wavefront OBJ Loader/ | - initial commit to Repository [jlamarche] | ||||||||||||||
| .gitignore | Cleaning up derived data [martiancraft] | |||||||||||||||
| README | - initial commit to Repository [jlamarche] |
Tips, Reviews and many more for your smartphone Mobile Apps
Friday, 28 October 2011
iOS-OpenGLES-Stuff
Thursday, 27 October 2011
Xcode 4.2 Release Notes
Installation
- You can install Xcode 4.2 for Mac OS X v10.6 Snow Leopard only if you have purchased an earlier release of Xcode.
Install or update Xcode through the Purchases or Updates panes. - If you purchased Xcode from the Mac App Store, the Install Xcode app is on the volume on which you installed Xcode.
To install Xcode 4.2 on another volume, you must delete all copies of the Install Xcode app from your file system.
Xcode
- In Xcode 4.2 with iOS 5, support for running and debugging applications in the iOS 4.3 Simulator and on devices with iOS versions older than 4.2 is optional and installed only on demand. In addition, this support is no longer shipped as part of the core tools packaging, and is instead made available for download and installation through the "Downloads" pane of the Xcode Preferences panel. A valid iOS developer ADC account is required to obtain this content.
To obtain the iOS 4.3 Simulator, choose More Simulators from the Run Destinations popup in the main toolbar. This item presents the Downloads pane of the Preferences and includes UI to initiate the installation of the simulator.
To obtain iOS device support for pre-iOS 4.2 devices, connect a device and activate it for development in the Organizer. Xcode prompts you to initiate the download of the device support components.
If Xcode 4.2 in iOS 5 is installed over a previous Xcode 4.2 beta or over Xcode 4.1, the iOS 4.3 Simulator and device support from the previous install will already be present, and the additional components will display as "Installed" in the Downloads pane of the Xcode Preferences.
The installation packages for the downloaded components are stored in~Library/Developer/Xcode. When a new version of Xcode (beta or GM) is installed, subsequent requests to install these components use the local packages without requiring a new download. - In some cases, Xcode 4.2 Organizer does not display a device that is in restore mode. As a workaround you can use iTunes to restore.
- In iOS 5, iOS Simulator is not compatible with previous releases of the iCloud Developer Seed for Mac OS X. It is highly recommended that you update to the latest iCloud Developer Seed to ensure compatibility.
- The iOS 5 SDK supports both iOS 4.3 and iOS 5.0 simulators.
- Be sure to quit any running Xcode before starting the uninstall-devtools script.
- The Network Link Conditioner daemon cannot be launched after installing the Networking Link Conditioner preference pane without first rebooting the system. As a result, the tool will not function without a system reboot.
If you do not want to reboot the system, you can issue the following command from Terminal instead:sudo launchctl load /system/library/launchdaemons/com.apple.networklinkconditioner.plist
- If you are using multiple tabs in Xcode 4.2, some behaviors that are dependent on the Run Generates Output and Run Completes events may not get triggered. This bug will be fixed in future versions.
Interface Builder
- When initiating a refactoring rename operation from the declaration of a property, any Interface Builder files that refer to that property will not be updated correctly. Instead, perform the rename operation on a usage of the property, or an associated
@synthesizestatement.
- In Xcode 4.2, when copying views (either a single view or multiple views), both the user defined constraints on the selected view and the user defined constraints between the views are copied to the pasteboard.
- When developing Mac OS X apps, changing the segment style of an
NSSegmentedControlobject to Automatic might crash in documents using Cocoa Auto Layout. To workaround the issue use an explicit segment style such as Round or Textured, and at runtime, change the segment style to automatic using thesetSegmentStyle:method.
Instruments
- There is a known issue with the Profile action from Xcode 4.2. After a build in which no source files have changed, Instruments will be unable to gather symbols for the target application.
This affects projects where both:
- The Release configuration is selected for the Profile action. (default)
- The Strip Linked Product build setting is set to "Yes”, or a custom Run Script build phase strips the product. (non-default)
- Perform a "Clean" on the product before initiating the Profile action.
- Do a Clean of the product and temporarily set the Strip Linked Product build setting to "No" while Profiling.
- Set the configuration of the Profile action to Debug.
- Run successive profiles directly from within Instruments when you do not need to rebuild.
- When developing Mac OS X apps, using the GC Monitor template in Instruments may cause Instruments to crash. To workaround the problem please consider migrating your application to ARC.
iOS Simulator
- When running Mac OS 10.7, Location Services are not functional in iOS simulator when simulating iOS 4.3 and earlier. This issue is not present when running Mac OS 10.6 or when simulating iOS 5.0.
Xcode 4.1 Developer Preview 1 Release Notes
New Features
Editing Nib Files
- You can create and edit view-based
NSTableViewinstances.
Just drag anNSViewsubclass (usuallyNSTableCellView) from the Object library into each table column. After connecting the datasource and delegate outlets, implement at least these methods:
– (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView– (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
objectValueproperty of anNSTableCellViewinstance in Interface Builder. You can also make action connections from a cell to the cell’s owner, which is usually the table view’s delegate.
By assigning identifiers to the view cells, you can use theNSTableViewmethod–makeViewForIdentifier:owner:in the implementation of the table-view delegate method–viewForTableColumn:row:. 7465869
Enhancements
General
- If Xcode or
xcodebuildfail to launch:
- Hold down Shift while launching Xcode
- Use the
xcodebuild -clearPlugInCacheoption. 9013457
Editing Nib Files
- Building products that require Interface Builder 3 plug-ins may fail because the
ibtoolcommand-line tool is unable to locate the requiredibpluginplug-in.
If you have the Xcode 3 toolset installed on your computer, load the plug-in using the Interface Builder 3 preferences window. Otherwise, use this command:
8920581defaults write com.apple.InterfaceBuilder3 "IBKnownPluginPaths.3.2.7" -dict-add "<plug.in.identifier.string>" "<path_to_ibplugin>"
Changes
Building: xcodebuild
- The
xcodebuild -activetargetoption is not supported. 8361726
Performance Measurement and Analysis
- MallocDebug is replaced by the Allocations and Leaks instruments, and the
libgmalloc(GuardMalloc) andleakscommand-line tools. 4388187
New Issues
Performance Measurement and Analysis
- When using the Mac OS X Core Data template, Instruments may hang or stop tracing. 9031942
- When you profile an application running in iOS Simulator, Instruments collects no data.
To have Instruments collect data, click the Instruments icon in the Dock after it starts recording. 8909180
Known Issues
General
- Nib files with explicit Xcode 3 file types open in the source editor instead of in Interface Builder.
Set the file type of the nib file in the Identity and Type inspector to “Default,” deselect it in the project navigator, and select it again. 8028406
Editing Nib Files
- Xcode disallows dragging objects in the Interface Builder canvas to the Object library. 8656363
Unit Testing
- Projects that use the Xcode 3 unit-testing tools cannot use the Xcode 4 unit-testing infrastructure.
To use unit testing in your Xcode 3 projects, set the Test After Build build setting to No. 8803198
Xcode 4.0 GM Seed Release Notes
Xcode 4.0 GM Seed Release Notes
Resolved Issues
Editing Nib Files
- Refactoring: Xcode refactors Cocoa bindings. 8423815
Source Control and Snapshots
- On a project with no snapshots, new snapshots appear in the projects organizer. 8774085
Performance Measurement and Analysis
- Xcode 4.0 Developer Preview 6 installs a set of kernel extension with a version number of 9999, which hinders their upgrade.
Before installing Xcode 4.0 GM Seed, perform these actions:
- In Terminal, execute these commands:
sudo rm -rf /System/Library/Extensions/AppleProfileFamily.kext/Contents/PlugIns/AppleIntelPenrynProfile.kext
sudo rm -rf /System/Library/Extensions/AppleProfileFamily.kext/Contents/PlugIns/AppleIntelNehalemProfile.kext
sudo touch /System/Library/Extensions
- Install Xcode.
- Restart your computer. 8844127
- In Terminal, execute these commands:
New Issues
Editing Nib Files
- Xcode disallows dragging objects in the Interface Builder canvas to the Object library. 8656363
Unit Testing
- The unit-test command-line tools in
/Developer/Toolsare deprecated.
To use unit testing in your Xcode 3 projects, set the Test After Build build setting toNO. 8803198
Known Issues
General
- Interface Builder files with explicit Xcode 3 file types open in the source editor instead of in Interface Builder.
Set the file type of the Interface Builder file in the Identity and Type inspector to “Default,” deselect it in the project navigator, and select it again. 8028406 - The task log viewer is empty when you select the last build task of a project or workspace in the log navigator and the viewer is set to show only recent operations.
Set the task log viewer to show all operations. 8350930
Editing Nib Files
- Xcode cannot edit Mac OS X–type Interface Builder documents comprised of objects from frameworks other than AppKit.
You can compile and run these documents, however. 7470836
Xcode 4.0 Developer Preview 6 Release Notes
New Features
Performance Measurement and Analysis
- There is new command-line tool for measuring an application’s performance without launching the Instruments application:
iprofiler. After making the measurements, you can analyze them with Instruments. A new framework, DTPerformanceSession (located in/Library/Developer/4.0/Instruments/Frameworks) allows your application to create performance measurements of itself or other applications. 7773305
Enhancements
General
- In the Manage Schemes dialog you can specify whether to create schemes automatically with the “Autocreate schemes” option. You may want to turn off automatic scheme creation in a large workspace, where automatic scheme creation produces too many schemes. This setting is shared with all the users of the workspace.
You can have Xcode create schemes with the Autocreate Schemes Now button. 7952053 - You can add an Xcode archive file (
.xcarchive) to the archives organizer by double-clicking it in the Finder. 8791305 - You can use a workspace-relative location for derived data. 8242521
Task Information and Alerts
- Enhancements to the execution of alert scripts:
- The scripts can access the Xcode user environment variables.
- The value of the PWD environment variable is a path to the directory that contains the current project or workspace.
- The new
XcodeAlertAffectedPathsenvironment variable contains a colon-separated list of full paths to the affected files. This variable replaces theIDEAlertAffectedURLsenvironment variable. 8748528
Resolved Issues
General
- Xcode doesn’t strip newline characters from the scripts in Run Script scheme actions. 8230045
- Duplicating a scheme doesn’t result in a new scheme with broken target references. 8335950
- When the active scheme is a unit-test scheme, clicking Run in the toolbar doesn’t produce an unknown error dialog. 8642393
Refactoring
- Editing nib files: The Rename transformation renames action methods in Interface Builder documents when the action’s target is the first responder or the method is declared in a category, protocol, or a superclass of the given class. 8500272
- Source Control and Snapshots: Xcode creates a snapshot of your workspace before performing a refactoring transformation. 7816256
Comparing Versions of a File
- After you create a branch and switch to it in the repositories organizer, using the commit dialog or the version editor doesn’t cause an assertion failure. 8383245
Source Control and Snapshots
- Xcode recognize SCP-based URLs (such as
git@example.com:/myrepositoryname.git) for Git repositories in the repositories organizer. 8044145
Building
- After you change General preferences > Build Location, Xcode uses the new build location. 7965261
New Issues
Performance Measurement and Analysis
- Multicore and Dispatch templates are not working. 8717719
- Time Profiler and System Trace don’t work after installing Xcode 4.0 Developer Preview 6.
Restart your computer. 8829655 - If your computer contains more than one release of Xcode, the Dock time profiler doesn’t work correctly.
Add the Instruments application in the appropriate Xcode release to the Dock and restart your computer. 8830062
Known Issues
General
- Interface Builder files with explicit Xcode 3 file types open in the source editor instead of in Interface Builder.
Set the file type of the Interface Builder file in the Identity and Type inspector to “Default,” deselect it in the project navigator, and select it again. 8028406 - The task log viewer is empty when you select the last build task of a project or workspace in the log navigator and the viewer is set to show only recent operations.
Set the task log viewer to show all operations. 8350930
Editing Nib Files
- Xcode cannot edit Mac OS X–type Interface Builder documents comprised of objects from frameworks other than AppKit.
You can compile and run these documents, however. 7470836 - Refactoring: Xcode does not refactor Cocoa bindings. 8423815
Searching
- Search navigator: Xcode may crash in the replace preview dialog of the search navigator when all the found instances are selected and you click Replace. 8091532
Xcode 4.0 Developer Preview 2 Release Notes
About Xcode 4 Developer Preview 2
Supported Configurations
Xcode 4 Developer Preview 2 requires Mac OS X 10.6.4. It does not install or run on earlier versions of Mac OS X.Xcode supports universal development for iOS 4 and 3.2 and Mac OS X 10.5 and later. It does not support development for iOS 3.1 or earlier or Mac OS X 10.4 or earlier.
Installation
Xcode 4 Developer Preview 2 is installed by default into the/Xcode4 directory and does not conflict with an existing installation of Xcode 3.2.The installer optionally installs Unix tools into
/usr, so conventional makefile-based and config-based builds operate correctly. Use the xcode-select command-line utility to set the default toolset for command-line builds. If you choose this option when installing Xcode 4, Xcode 4 Unix tools replace the Xcode 3.2 Unix tools in /usr. This does not effect the functionality of any Xcode 3.2 installations.Project File Format Compatibility and Versioning
Xcode 4 reads and builds projects created in Xcode 2.1 through 3.2.3. Projects created with Xcode 4 can be opened and built on Xcode 3.2 through 3.2.3.Opening and building a project in Xcode 4 does not upgrade or alter it. Changes you make to a project in Xcode 4 are compatible with earlier versions of Xcode.
Technical Support and Learning Resources
Apple offers a number of resources where you can get Xcode development support:- http://developer.apple.com: The Apple Developer website is the best source for up-to-date technical documentation on iOS and Mac OS X.
- http://developer.apple.com/technologies/tools/: The Xcode home page on the Apple Developer website provides information on the developer tools.
- http://devforums.apple.com: The Apple Developer Forums feature a dedicated Developer Forum for Xcode 4 Developer Previews.
To send comments or feedback on the Xcode Tools suite to Apple, use xcode-feedback@group.apple.com.
Known issues in Xcode 4 Developer Preview 2
Xcode 4 Developer Preview is pre-release software. File bugs at http://bugreport.apple.com for performance and stability issues, data loss or file corruption, missing or unimplemented features, behavioral or aesthetic issues, and feature and enhancement requests. Provide as much context as possible, especially crash logs or samples, detailed Steps to Reproduce, and projects or workspaces when possible.These problems are already known in this release:
- Installer packages visible on Xcode 4 Developer Preview 2 disk image (8209023)
- When mounting the Xcode 4 Developer Preview 2 disk image, a
Packagesfolder is visible. Installing packages from within this folder is not supported. Use theXcode and iOS SDKpackage to install Xcode 4 Developer Preview 2. - iOS applications run with Instruments launch in iPad Simulator (8203761)
- Running an iOS 4 application with Instruments in the iOS simulator results in the Simulator launching in iPad device mode instead of iPhone device mode.
- Console output from iOS Simulator applications (8201210)
- Console output to standard out from iOS applications running in the iOS simulator does not appear until each call is new-line terminated or the application is quit.
- SCP-style URLs for Git repositories are not supported (8044145)
- The Repositories organizer does not support SCP-style URLs when configuring Git repositories. Use the ssh:// style of URL to refer to a repository you wish to clone.
For example, the URL
git@mycompanyname.beanstalkapp.com:/myrepositoryname.gitshould be provided asssh://git@mycompanyname.beanstalkapp.com/myrepositoryname.git. - Version editor Jump Bar out of sync with file shown (8198690)
- At times the Jump Bar in the Version editor is out of sync with the document shown. Workaround: Navigate away from and back to the file in the Version editor to refresh the data.
- Documentation organizer requires updated documentation (8205933)
- Documentation viewed in the organizer may be missing its table of contents or its contents are not navigable via the Jump Bar. Workaround: Download the latest documentation, go to the Documentation preferences and click Check and Install Now.
- Crash when making connections using connections HUD (8197402)
- Control-clicking an element and attempting to drag a connection crashes Xcode then next time any file is saved. Workaround: Use the connections inspector or connect-to-code with the Assistant editor to make connections.
- Effects attributes of objects in IB editor (7470883)
- Properties modified using the Effects inspector in Interface Builder 3 are not editable in Xcode 4.
- Attributes on objects in IB documents require size-to-fit (7600085)
- Some changes to attributes of objects in IB files require that the object is properly sized-to-fit after making the change, but these objects do not automatically size-to-fit. Workaround: Select the control in the design canvas and choose Editor > Size to Fit.
- Outlet collections for connect to source code from IB documents (8045078)
- When making connections to source code in Interface Builder documents, connecting to outlet collections is not supported.
- Connect to source code from IB documents does not insert counterparts (8082047)
- When inserting an outlet or action using connect to source code in IB documents, the counterparts for the connection are not added.
- Actions: When dragging to a header file, the implementation is not inserted.
- Outlets: When dragging to a header to insert a property outlet, the needed instance variable,
@synthesize, and release call in dealloc are not added.
- Hidden property makes views disappear in IB editor (8059339)
- Views marked as hidden are completely invisible in the Interface Builder editor. Workaround: To work with these views, selected them in the Jump Bar or document outline view.
- IB documents appear as source (8028406)
- IB documents with explicit Xcode 3 file types open in the Source editor instead of the Interface Builder editor. Workaround: Reset the file type for the selected file in the "Type and Identity" file inspector's "File Type" pop up button to "Default," then close and re-open the document.
- Editing IB documents with objects from plugins (7470836)
- Xcode 4 supports iOS-type IB documents and Mac OS X-type IB documents composed of App Kit objects. Mac OS X-type documents composed of objects from other frameworks, such as Address Book, Automator, and 3rd party IB plugins, are not supported in the IB editor. Although these documents cannot be edited with the IB editor, they can be compiled, built, and run.
- Warnings when building after editing a IB document (8131479)
- If you edit an IB document and then build a project, warnings may appear for the IB document. Most likely, these warnings are false-positives. Workaround: Make sure the project has finished indexing before saving IB documents to avoid these warnings. Re-save any files that have warnings after the project has finished indexing to remove the warnings.
Issues Resolved in Xcode 4 Developer Preview 2
These issues where present in Xcode 4 Developer Preview and have been resolved in Xcode 4 Developer Preview 2.- Snapshots available as alert action (7945417)
- Snapshot creation is available as an alert action in Alerts preferences.
- Default build directory for all projects and workspaces (8073463)
- General preferences includes settings for the default locations to use for derived data (such as build results, logs and indices), snapshots, and archives. Settings made in the Project or Workspace Settings of individual projects or workspaces override the app-level setting.
- Broken file references (8085921)
- A number of issues were resolved that allow Xcode 4 to resolve references that were previously broken.
- Issues identifying appropriate run destinations for targets (8165363)
- Issues that caused some iOS targets to appear as Mac targets with "Intel 32-bit" as its run destination and some multi-architecture Mac OS targets to only be offered as "Intel 32-bit" have been resolved.
- Indexing issues on case sensitive file systems (7950730)
- A situation where IB documents blocked indexing in case sensitive file systems has been resolved.
- IB editor crash with table view image cells (8118050)
- A crash within the IB editor when loading an IB document with a table view containing a image cell column has been resolved.
- Filtering objects in IB document outline view (7880130)
- The filter field in the IB editor's document outline view filters objects in the Objects outline view based upon their label.
- Speed improvements when dragging objects in IB documents (8088222)
- Dragging objects in Interface Builder documents is improved and does not pause.
- Options when connecting to source code from IB documents (8095283)
- When connecting to source code to insert an outlet or action, the configuration panel includes options for outlets and actions, such as retain/assign for property outlets.
- IB editor requires IBAction return type
- Previous releases of Interface Builder accepted many method signatures as valid actions. The IB editor in Xcode 4 strictly identifies IBActions and only accepts methods with return types explicitly tagged as
- (IBAction). - Manually defined actions and outlets need to be defined in source
- Actions and outlets defined manually in previous releases of Interface Builder's inspectors and library but not redefined in source code are not recognized by Xcode 4.
Functionality No Longer Supported in Xcode
The following features and functionality have been removed from Xcode. When substitute functionality is available, it is noted.- Layout modes
- Class Browser. Use the Symbol Navigator and Class Navigation menu in the Editor.
- Active Target/Configuration/Architecture/SDK/Executable toolbar items and Project menu entries. Configure a Launch Scheme for a particular combination of target/configuration/architecture/SDK/executable that is useful to you using the Scheme toolbar popup.
- Bookmarks
- Favorites bar
- Detail views
- Class model
- Touch an individual file
- Recent Files menu item in the File menu. The Navigation buttons have a list of recent files. Also, use the filter in the Project Navigator to show all recently-viewed files in the project or workspace.
- Support for External Editors
- Worksheet (Control-R) execution of shell script commands in text documents
- Predictive Compilation (generally replaced by Fix-It Hints)
- Fix and Continue
- Breakpoint navigation menu in Navigator bar
- Editing and compiling AppleScript .scpt files
- Perforce and CVS source code management
- Dock Icon Menu of open Xcode windows (in Snow Leopard, press and hold on the Dock tile to see all Xcode windows)
- Editing Carbon nib files. Xcode 4 supports building Carbon XIB and NIB files; use Interface Builder 3.2 to edit them
Xcode 4.0 Developer Preview 1 Release Notes
Xcode 4 is a major version of the Xcode toolset. It requires Mac OS X 10.6.3 and does not run on previous versions of Mac OS X.
General
- Supported Configurations
Xcode 4 runs on Mac OS X 10.6.3. It does not install or run on earlier versions of Mac OS X. Xcode supports universal development for iPhone OS 4 and 3.2 and Mac OS X 10.4 and later. It does not support development for Mac OS X 10.3 or earlier or iPhone OS 3.1 or earlier.
- Xcode Installation
Xcode 4 Developer Preview is installed by default into the/Xcode4directory and does not conflict with an existing installation of Xcode 3.2.
The installer optionally installs Unix tools into/usr, so conventional makefile-based and config-based builds operate correctly. Use thexcode-selectcommand-line utility to set the default toolset for command-line builds. If you choose this option when installing Xcode 4, Xcode 4 Unix tools replace the Xcode 3.2 Unix tools in/usr. This does not effect the functionality of any Xcode 3.2 installations.
- Project File Format Compatibility and Versioning
Xcode 4 reads and builds projects created in Xcode 2.1 through 3.2.3. Projects created with Xcode 4 can be opened and built on Xcode 3.2 through 3.2.3.
Opening and building a project in Xcode 4 does not upgrade or alter it. Changes you make to a project in Xcode 4 are compatible with earlier versions of Xcode.
User-specific project information for Xcode 4 is stored in new files in the.xcodeprojproject wrapper. Xcode 4 ignores and rarely alters the information in Xcode 3.2’s per-user.pbxuserfiles.
- User Preferences from Xcode 3.2
For the most part, Xcode 4 neither migrates nor interferes with your user settings from Xcode 3.2, with some exceptions.
General, Code Sense, Building, Distributed Builds, Debugging, Key Bindings, File Types, Source Trees, and Documentation preferences from Xcode 3.3 are ignored; similar Xcode 4 functionality starts with Xcode 4 defaults. Changing settings in Xcode 4 does not affect your continued use of Xcode 3.2.
Text Editing, Fonts and Colors, Indentation, and SCM preferences are copied from Xcode 3.2 preferences. Changes made to these preferences with Xcode 4 are not copied back to Xcode 3.2. - Workflow
The Default, Compact, and All-in-One layouts have been replaced by a single Xcode window layout that accommodates everything from a single source file to a multiple interrelated project workspace. Source files, Xcode projects, Interface Builder xibs & nibs, data models, and other files are viewed and edited in the Editor area of the window.
The left side of the Xcode 4 window shows one of several navigators. The project aviator contains a list of files or projects, and functions like the Groups and Files tree of an Xcode 3.2 project. Other navigators show lists of project symbols; current issues, such as build errors and warnings; results of cross-file Find operations; logs from operations such as building, debugging, or SCM transactions; current breakpoints set in code; or the debug information for the current process. You select an item from the navigator to show its contents for viewing or editing in the Editor.
Most navigators have a Filter area at the bottom of the navigator that lets you narrow down the contents it displays. This resembles the function of the Filter field in Xcode 3.2’s Detail view. In the project navigator, additional scope buttons allow you to show only recently–accessed files, only currently–modified files, or only files that have interesting SCM status.
A Utility area on the right shows information about items selected in the navigator or current editor. The top portion of the Utility area features inspectors for the selected item in the navigator or editor. There may be several separate inspectors. The leftmost one usually shows the information about the selected file, while others may show information about the selection within that file. At the bottom of the Utility area is a Library with parts that can be added to a project or file, including file templates, text macros, Interface Builder objects, and media files.
The navigator and utility areas are opened with the editor in the middle or closed to allow the editor to occupy the entire window.
The Xcode window supports window tabs, which span the navigator, editor, and Utility areas. Create new tabs for editing different files, or have separate tabs for file navigation, searching, and debugging if you choose.
You can show multiple editors at the same time, stacked vertically or horizontally. The Assistant editor automatically associates the contents of two editors; for example, the Assistant editor can always show the header file when editing a source file or the source files when browsing through a build log.
The same project or workspace can be open in multiple windows simultaneously.
- Workspaces
The main Xcode window contains a workspace. A workspace can be as simple as a single text file or as complex as several dozen interrelated projects. If you open a single project in Xcode 4, it opens as its own workspace. You can create a dedicated workspace that contains multiple files and projects and store its workspace configuration in a separate.xcworkspacefile.
Each workspace manages editing, navigation, building and launching, indexing, snapshots, and SCM for the files and projects in it. In most cases these Xcode 4 workspace functions supersede the behavior of the same project in Xcode 3.2. In some cases, the settings of the Xcode 3.2 project are copied into the Xcode 4 workspace. Changes you make to those settings are isolated to that workspace and do not interfere when the same project is opened in another workspace or in Xcode 3.2.
- Project Management and Editing
Projects are displayed and edited in the project navigator. The project navigator contains any number or projects, files, or folder references. Add new projects to a workspace with the + button in the Filter area at the bottom of the navigator.
Within a project, files, groups, and folder references behave just as in Xcode 3.2. Add files to a project with File > New > New File..., with the + button in the Filter area, or by dragging them into the project navigator from the Finder or the Library.
Project Settings that are found in the Project Inspector in Xcode 3.2 are now located in the Project editor in Xcode 4. The Info tab sets project-wide information (add or delete configurations and localizations, set Deployment Target defaults for all targets) and the Build Settings tab lets you set Project-level Build Settings.
Targets are not displayed in the project navigator, but instead are available in the project editor. Add or delete targets here, as well as edit target contents. The tabs in the Target Editor are similar to the tabs in the Target Inspector in Xcode 3.2. The Info tab lets you see and change the contents of the target’s Info.plist file visually; the Build tab edits the target’s Build Settings; and the Build Rules tab edits the Build Rules for the target. Add, rearrange, and delete Build Phases, and add or remove target members from Build Phases with drag and drop. Target Dependencies are set in the Build Dependencies build phase. Per-file Compile Flags are set in a column in the Compile Sources build phase. Header Role (project, public, private) is set by dragging header files into subdivisions of the Copy Headers build phase.
Structural commands on the Project—adding targets, configurations, build phases, localizations—are now located in the Editor menu instead of the Project menu as in Xcode 3.2.
The Build Settings tabs for both the Project and Target editors are significantly improved from Xcode 3.2. The Build Settings grid now essentially treats Configuration as a build setting condition, so you see values in all configurations simultaneously. The Levels mode also shows Default, Project, and Target settings in columns, so you see exactly where a build setting value comes from. Select multiple targets and see the settings in those targets side-by-side.
The Build Settings grid has a Basic scope, which shows only the most commonly used settings for a project or target (along with all settings defined at that level). The All scope shows all settings. The filter field filters the build setting list. Build setting names and values are returned as Find Results in the search navigator.
Changes made in the project editor are stored in the project, not in the workspace. They take effect in any workspace that has that project as a member and also take effect if the project is reopened in Xcode 3.2.
- Navigation
The Jump Bar across the top of the Editor shows the logical path to the item in the editor. Each part of the path is a pull-down menu to navigate to any other item at that level; the rightmost part allows navigation within the Editor. For source files, for example, this replaces the function pop-up in Xcode 3.2.
The Navigation popup menu button at the left of the Navigation Arrows allows direct navigation to other files. Its submenus list Recent Files, Unsaved Files, Counterparts, class relationships including Superclass, Siblings, Subclasses, and Categories, and Includes and Included By. These take the place of the buttons in the editor Navigation Bar in Xcode 3.2.
A split-button control in the toolbar switches among Standard Editor, Assistant Editor, and Version Editor in the Editor area. The Standard Editor shows one editor. The Assistant Editor shows an editor split between two different files; change whether this is horizontal or vertically split with View >Editor > Change Split Orientation (command-shift-0).
Holding down the option key when navigating to a different file using the Standard Editor’s Jump Bar opens both the current and the selected file in the Assistant Editor.
The second view in the Assistant Editor tracks the file or selection in the main view. For source files, the second view shows the main counterpart (header or source file) for the file in the main view. For the Log Editor, the second view shows the source file location corresponding to the selected error or warning. For Interface Builder files, the second view shows the header file for the objects selected in the main view.
The first item in the Jump Bar for an Assistant Editor shows a list of Assistant Categories that lets you control how it tracks the main editor. Choosing Manual allows you to disengage the split editor to show any file, even a different part of the same file.
The Open Quickly command allows you to open any known file by name, or to the file that defines the given symbol. If a filename is selected, Open Quickly enters that filename so that pressing Enter jumps directly there. Typing the initial letters (or just the capital letters in) a file name or symbol lists all matches; use the arrow keys or mouse to select a file to open.
Within a file, the Navigate menu in the main menu bar provides navigation commands specific to the editor’s document type.
- Editors
Xcode 4 includes editors for project files, source code, Interface Builder files, Property List files, Data Model files, Scripting Definitions, and Rich Text files. PDF files are viewable but not editable. HTML and XML files can be edited as text; there is no HTML viewer. All other documents are displayed as previews as in the Finder. In addition, a context menu on every file reference allows it to be opened using a Hex Editor to view and edit the raw file contents.
Editors for different document types each have custom commands in the Navigate and Editor menus to act on the information in that document type. The terminal item of the Jump Bar allows you to navigate within the document.
- Editing Source Code
The Source Code Editor supports the major editor functionality of the Xcode 3.2 editor: automatic indenting and formatting, Code Sense code completion with text macro support, code folding, and Code Focus block highlighting. Navigation features in the Source Editor are generally unchanged from Xcode 3.2: command-double click jumps to the symbol’s definition, option-double click shows the Quick Help for a function, etc.
When your target is set to use the LLVM compiler, the source code editor scans your source text as you type. Syntax errors are marked with a wavy red underscore or a caret at the position of the error, and a symbol in the gutter. Clicking the symbol advises you on the potential syntax error and in many cases offer to repair it automatically.
Similarly, Edit All in Scope uses information from the LLVM compiler to correctly determine the scope of identifiers to mass-replace.
- Editing Interface Files
Interface Builder xib and nib files are edited directly in the Xcode editor—the Interface Builder application has been completely integrated into Xcode. When you select an Interface Builder file, the file’s objects appear in a sidebar in the editor, and the objects themselves appear on a canvas when selected. The Interface Builder inspectors and Library are available in the Utility area to the right of the canvas. Instantiate new objects in your IB file by dragging them directly from the Library in the Utility Area onto the canvas.
Interface Builder files are automatically associated with the project that contains them, so there is no need to synchronize these files and projects between Xcode and IB. Connections are made in the usual way, by using the connections inspector or by control-dragging from one object to another.
When editing an Interface Builder file with the Assistant Editor, selecting an object opens the object’s corresponding class header in the second pane. Drag connections directly from the object to declarations in the header file.
Xib/nib-wide properties are edited in the File Inspector for the nib.
- Editing Data Models
Data model files are edited directly in the Xcode editor. The sidebar shows the list of elements in the model. Using buttons at the bottom of the main editor, choose to display the model in graphic form (as in Xcode 3.2) or in a table view that you sort, search, and filter.
Attributes of selected data model objects are edited using the Model tab of the Inspector in the Utility Area to the right of the Editor.
- Editing Property Lists
Property list files are edited directly in the Xcode editor, just as in Xcode 3.2. For known property list types, the Key panel shows a descriptive name of the key instead of the key’s literal text; toggle this view using the Show Raw Keys/Values item in the Editor menu. The raw key value is also available in the QuickHelp inspector.
- Building
The separate Build and Run menus in Xcode 3.2 have been consolidated into a single Product menu. There are separate commands for Build, Analyze, and Test. The Run command builds if necessary, then executes; Run without Building runs the last built product even if there are unbuilt changes.
The Active Target, Configuration, SDK, Architecture, and Executable concepts have been consolidated and their individual menu and toolbar items removed. Xcode 4 manages building and launching with schemes. When you open a project, Xcode automatically creates schemes based on the targets, build configurations, and executables in your project. Schemes are used by Xcode 4 and are ignored by Xcode 3.2.
A launch scheme contains instructions for building one or more targets and its dependencies, then either running tests against the build products or launching an executable. This allows you to encapsulate the logic of your development cycle in a single package and invoke it simply by clicking Run, rather than having to set several different switches in the Overview menu every time you shift development modes.
All schemes are listed in the Schemes popup in the toolbar (in place of the Overview popup in Xcode 3.2). To build and run, you choose a scheme (and, optionally, a destination that specifies a particular device or architecture supported by that scheme), choose to Enable or Disable Breakpoints, and then click Run. Xcode builds the targets of the scheme in the Build Configuration designated by that scheme, optionally runs Unit Tests on the results, then launches a designated executable with or without breakpoints enabled in order to execute the build product. To build for a different SDK or device, to launch with a different set of environment variables or command-line arguments, or to build a different configuration or different set of targets requires only picking a different scheme from the same menu.
The Edit Active Scheme item in the Schemes popup allows you to set the attributes of the Build Action of the scheme (configuration and target list), the Test Action (which targets to build and execute for unit testing), and the Launch Action (what debugger to run, under which performance tool, with what runtime settings). The Manage Schemes menu item allows you to create new schemes, remove unused ones, and reorder schemes in the menu. If a scheme is not relevant to your workflow, delete it or uncheck it and it is longer shown in the menu.
All schemes are stored on a per-user basis in the project or workspace unless the Shared box is checked. Shared schemes are made available to all users of that project or workspace. Use the Container popup to determine which project or workspace the scheme is saved in.
Once Xcode has determined the targets and dependencies, the build configuration, the architecture and SDK from the choice of Launch Scheme and Destination, building proceeds normally. Xcode builds the designated targets in dependency order, using the build settings determined by the build configuration, for the architectures supported by the destination. It processes the build phases of each target to copy resources, compile sources, link binaries with frameworks, and run shell scripts as needed.
The progress of the build is shown in the Activity View in the Xcode 4 toolbar and build steps are recorded in a Build Log in the log navigator. Xcode 4 keeps a progressive record of build logs so you can see the results of previous builds. Selecting a build log in the log navigator opens the log in the Standard Editor, where you expand, search, or filter its results using the scope bar and filter buttons. Selecting a build step or issue in the log and switching to the assistant editor shows the corresponding build file in the assistant pane.
If you care only about build issues and not about the build steps, show the issue navigator. It shows a concise phrasing of each issue, and selecting it navigates the primary editor to the location of the issue. The Filter field is used to show only specific types of issues. Use the jump bar the top right of the editor pane to navigate among current issues.
- Build Locations
Xcode 4 does not have application-level settings for build directories (that contain intermediate files and build products). Instead, each project or workspace has a Build Location that sets a common directory for all the projects it contains. By default the build location is a unique directory in~/Library/Developer/Xcode/DerivedData/and each project in the workspace has a separate folder in that directory. This means that when you build projects with the same name in two different workspaces (for example, a branch and trunk of the same project), its precompiled headers, indexes, and build products do not conflict with one another.
Set the Build Locations in the sheet invoked by Project Settings or Workspace Settings in the File menu. The paths set in the Settings sheet control the default values for$(OBJROOT)and$(SYMROOT)(Build Products Path and Intermediate Build Files Path, respectively) when building projects. Any build settings derived from these are affected by the workspace-wide Build Location.
The common Precompiled Headers Cache Path$(CACHE_ROOT)is now within the project or workspace Build Locations. When using LLVM compiler 2.0, the size of precompiled headers is significantly smaller, and the size and speed advantages of sharing them are less significant.
- Build Tools
Xcode 4 contains an updated version of the LLVM compiler (LLVM compiler 2.0) which directly supports compilation of C++ and Objective-C++ code without falling back to llvm-gcc. New projects created in Xcode 4 are configured to use LLVM compiler 2.0.
In this Developer Preview, C++ support in the LLVM compiler 2.0 is not available for iPhone OS.
llvm-gcc4.2 is now the default system compiler in Xcode 4. Existing projects that don’t have an explicit Compiler Version set and thus build with gcc4.2 on Xcode 3.2 build with llvm-gcc4.2 on Xcode 4.
GCC 4.0 has been removed from Xcode 4. If your project has an explicit Compiler Version of gcc 4.0, you need to change it in order to build with Xcode 4.
- Running and Debugging
The active Scheme controls what happens when you choose Run from the Products menu or click the Run button. With a Launch scheme, the Build and Launch actions of the scheme are performed; for a Distribution scheme, the Build and Archive actions are performed. Choose to Build (without Running), Run (without Building), or Build and Test with the menu items in the Product menu.
As in Xcode 3.2, Xcode always launches executable code by attaching a debugger to it. When you choose to launch with breakpoints deactivated, this adds negligible launch time and no measurable performance impact until the program is interrupted or traps into the debugger. Deactivate breakpoints with the Product menu item, with the button in the toolbar, or as a default in the Scheme Editor.
In Xcode 4, thegdbdebugger and the newlldbdebugger are available.
Additional tabs in the Launch step of the Launch Action allow you to designate launch arguments and environment variables to be used when launching, as well as a set of diagnostic controls for memory management and logging. For example, create a launch action that always runs your executable under Malloc Debug by checking the appropriate check box.
Launching a process reveals the Debugger Area under the Editor. Show or hide this at any time from the View menu. The Debugger Area has a Variables view and a Console view.
The Variables view has a Filter bar with a popup to choose to show all symbols, only symbols in the local scope, or an Auto mode that shows values relevant at the current program location. A filter field allows you to narrow down to specific symbols of interest.
Values are shown in outline form with the identifier, type, raw value, and formatted value in a single line, rather than a multicolumn display. During execution, updated values are displayed in blue. A contextual menu on each value allows you to control its display, print its value to the Console, or open the backing memory for it in a hex editor.
The Console shows interaction with the debugger or the program’s Standard Input and/or Standard Output. Transcripts of debug sessions are stored in the log navigator and is shown in the main editor area. Xcode 4 keeps a record of debug logs so you can see the proceedings of previous debug sessions.
The Debugger Bar at the top of the panel has the step controls for program execution, as well as a path control showing the context of the current program counter by thread and stack frame. Stack frames are identified with distinctive icons to identify user, system, framework, and kernel code.
The Breakpoints navigator shows all breakpoints set in all projects in the workspace. Breakpoints are imported from project user files in Xcode projects added to the workspace, but are stored in workspace user files in Xcode 4. Changes you make to breakpoints in Xcode 4 are not available to other users or workspaces and do not appear when the project is opened in Xcode 3.2.
Click the breakpoint symbol in the breakpoint navigator to enable or disable it; double-click it to set the breakpoint condition, action, and options.
The debug navigator shows all active threads in the process. The Stack Compression slider at the bottom reveals or hides redundant or irrelevant stack frames in all threads; the Σ button hides running threads with no frames in your code. Any Memory Viewers you have opened on locations or variables also appear in the debug navigator.
Breakpoints, the Program Counter bar, Data Tips, and In-Editor Controls appear in the source editor while debugging just as in Xcode 3.2.
- Debugging Tools
Thelldbdebugger is new in Xcode 4 and is still under development. While it offers basic functionality in this Developer Preview, it is not fully featured. See the LLVM project page at http://lldb.llvm.org for more information onlldb.
- Packaging and Distribution
Similar to Launch Schemes, a Distribution Scheme is a plan for building one or more targets and running unit tests, but instead of executing the build product, a Distribution Scheme designates an operation for archiving and distributing it. You generally use a Distribution Scheme at milestones in product development, such as posting a nightly build, seeding a preview copy, or shipping your final release.
A Distribution Scheme has Build and Test actions just like a Launch Scheme, but also has an Archive action that packages the build products in a designated manner. Like Launch Schemes, each action has pre-action and post-action scripts to perform useful tasks at that phase of the operation.
The Archive step of a Distribution Scheme allows you to choose to archive an application alone, or to package all build products for the scheme into a single disk image (.dmg) file. - Indexing
Xcode 4 has an entirely new mechanism for indexing files in a workspace. An index is created for the entire workspace, so references across projects are resolved.
The indexer now uses the LLVM compiler 2.0 to parse source files. This results in improved performance and higher accuracy; most importantly, the interpretation of symbols for indexing more closely matches the interpretation of syntax at compile time.
The index is stored in the Index subdirectory of the workspace’s unique directory in~/Library/Developer/Xcode/DerivedData. Manage this information (including deleting the index and other derived data of an orphaned project) in the Organizer.
Indexing is done in the background; the Activity View indicates when indexing is being performed. Until the index is ready, some functions that require the index may not be available (for example, Open Quickly); others may have degraded performance (for example, syntax coloring of system symbols). When the index is complete these features become available immediately.
- Snapshots
The Snapshots feature has been reimplemented to be faster and more reliable. Note that you must install the System Tools in the Xcode 4 installer in order to use snapshots.
Create a snapshot manually or automatically before a Find and Replace operation. The Settings sheet (File > Project Settings) allows you to designate the storage location of the snapshot backing store.
- SCM
Configuration of SCM repositories is done in the Organizer instead of a preference pane. If you open a project or workspace that was checked out of an SCM system using the command line or another tool, Xcode automatically configures the SCM repository support for that project or workspace.
Support for git has been added and support for Subversion has been enhanced to support annotations. The git tools are installed when you check the System Tools check box in the Xcode 4 installer. Perforce and CVS Source Code Management systems are no longer supported.
SCM status is shown as a badge in the project navigator, using the conventional set of mnemonics (U for updated in repository, M for locally modified, A for locally added, D for locally deleted, I for ignored, R for replaced in the Repository). Badges propagate up to the highest container so you see the SCM status of the whole workspace regardless of the disclosure level. An asterisk badge on a container means its contents have mixed status. Detailed SCM status is also available in the SCM area of the File Inspector.
Selecting any file under SCM control and clicking the Version Editor brings up that file in a side-by-side view. Clicking the Timeline icon in the center column shows a visual timeline of all repository versions; use the sliders to control which side shows which version. If one side is your working copy, you merge changes to it from any repository version using the Version Editor. In Xcode 4, the working copy of a file is on the left.
Buttons under the Version Editor allow you to show a file comparison and timeline; change logs for the file; or individual change annotations (“blame”) for each line of the file.
SCM commands are now in the Source Control submenu of the File menu, rather than in a separate SCM menu. The SCM sheet allows you to select individual files for a given SCM action, and preview the differences before you confirm the action.
Update and commit operations are recorded in the log navigator. By selecting a log you see the individual steps of that operation in the Log Editor.
- Searching
The find navigator searches the entire workspace. It shows Find Results in text files, property lists, data models, and build settings in projects and targets.
The magnifying glass icon in the Search field reveals a list of recent searches. Choose Show Find Options to set Textual or Regular Expression search style, whether the search result must contain or match exactly the search term, whether to match or ignore case, and what subset of the workspace or project to search.
- Status and Activity
An Activity View in the center of the toolbar shows a progress indicator for ongoing activities, and the names of background activities (indexing, checking SCM status) that are also being performed. The Activity View displays “Welcome to Xcode” when Xcode is idle.
- Alerts
The Alerts preference pane allows you to specify actions that occur when certain operations are initiated or completed. You use this to tailor your workflow, for example, to always show the latest Build Log when you start a build. Triggers include starting and stopping building, testing, launching, searching, or restoring a device; actions include playing sounds, bouncing the dock icon, or executing a script.
- Organizer
The Xcode Organizer is no longer an arbitrary container for files and folders; that functionality has been moved to the Workspace. It is still the window where you manage iPhone, iPod Touch, and iPad devices. In addition, SCM Repository Management has moved from the Preferences pane to the Organizer, and Developer Documentation has moved from its own window into the Organizer.
The Organizer also has a new section for Archives, which provides access to the archived applications and disk images created by Distribution Schemes.
- Key Bindings
Because Xcode 4 has a different menu structure, many Xcode 3.2 menu commands no longer exist in Xcode 4. Some of their menu key bindings have been reassigned to new functions in Xcode 4, and the key bindings of other menu items have been changed to be consistent.
Key Binding Xcode 3.2 Meaning Xcode 4 Meaning ⌘⌥B Show Breakpoints Edit and Build Scheme ⌃⌘B Show Model Browser Build and Analyze ⌘⌥C Copy Style Commit ⌘D Add Bookmark Duplicate ⌘⇧D Open Quickly (now ⌘⇧O) Jump to Definition (equivalent of ⌘-double-click) ⌘⇧⌥D Open This Quickly (now ⌃⌘O) Unassigned ⌘⇧E Toggle Editor Use Selection for Replace (was ⌃⌘E) ⌃⌘E Use Selection for Replace (now ⌘⇧E) Edit All In Scope (was ⌃⌘T) ⌘⌥F Find in Detail Find and Replace ⌘I Get Info/Show Inspector (now ⌘⌥1) Step Into (was ⌘⇧I) ⌘⇧J Refactor Jump to Line (was ⌘L) ⌘L Go to Line (moved to ⌘⇧J) Reveal in Navigator ⌃⌘N New Empty File New Workspace ⌘⇧O Step Over (now ⌘P) Open Quickly (was ⌘⇧D) ⌃⌘O Organizer (now ⌘⇧2) Open This Quickly (was ⌘⇧⌥D) ⌘P Print Step Out (was ⌘⇧T) ⌘⇧R Console Run without Building (was ⌘⌥R) ⌘⇧⌥R Clear Console Edit Scheme and Run ⌘T Show Fonts Test ⌘⇧T Step Out (now ⌘P) Test Without Building ⌘⌥U Ungroup Update ⌘⌥V Paste Style Special Paste ⌃⌘W Close Project Close Current File (was ⌘⇧W) ⌘Y Build and Debug – Breakpoints On Enable/Disable Breakpoints (was ⌃⌘\) ⌃⌘Y Debug – Breakpoints On Pause (was ⌘⌥P) ⌘0 Project Hide Navigator - New Untitled File
- Compile, Preprocess, Show Assembly Code
- Distributed Builds
- Refactoring
- Specific functionality for Test action in Launch Schemes and Distribution Schemes
- Replace in Selected Text
- Duplicate for files, folders, and targets
- Key binding sets for other editors
- User Script menu or editor
- xed
- Target editing for External (makefile) targets
- Editing .nib or .xib files that require custom plug-ins at build time
- Target Membership inspector
- Connections to custom actions and outlets in iPad interface builder files. Use the Connect to Source Code feature to make these connections.
- Searching in Interface Builder files
- Creating custom or placeholder objects in iPad Interface Builder documents. Copy and paste an existing placeholder from another document.
- Debugging with
lldbworks with iPhone and iPad apps in the simulator, but not on the device - Duplicating a Localization in the project editor may not work if the project is under SCM control.
- Following a link in the Documentation Viewer may cause a crash if the linked document is expected to be in the local documentation set but is missing. 8017277
- Clicking a Find Result of a build setting opens the containing project or target, but does not scroll to and select the actual found setting. 7749874
- Canceling a build may leave the spinning Progress indicator in the Build item in the log navigator. 7735752
- Reveal in Navigator selects the file in the project navigator, but may not scroll it into view. 8003741
- Most definitions in Xcode’s scripting dictionary are currently unimplemented. 7948823
- The Editor > Add Build Phase menu items are not enabled unless you select a file in a current build phase. Use the Add Build Phase button in the editor.
- The Relative to Build Folder, Relative to Developer Folder, Relative to Build Products, and Relative to Path (source tree) reference styles are not shown correctly in the File Inspector and cannot be set in the File Inspector. Values set correctly in existing projects work correctly. Dragging build products between projects in a workspace may not create build product references correctly.
- Locked files are generally not handled. The File Inspector usually gives an indication of file locked state, but no attempt is made to prevent or warn about operations on locked files. 7338327
- Adding or moving files in a project may not add them to the correct build phase. After adding a file, you should check the target build phase to ensure the file is built by the desired target(s) correctly.
- Build files in the Compile Sources phase are displayed in alphabetical order and you cannot change the order. If you add a new file, the build files are saved to the project file in alphabetical order and built in that order. If order is important to building or linking that target, this may cause the build to fail.
- “Open These Results As Transcript Text File” is not working. 8041039
- Disk images created by a Distribution Scheme are not showing up in the Organizer.
- Deleting projects from a workspace may not correctly update schemes that rely on that project’s targets. You may wish to delete and recreate schemes after deleting projects from a workspace. 7901251
- In certain circumstances, opening a workspace opens it in two independent windows. 7336838
- Arguments and environment variables for a Launch action cannot be reordered. 7909498
- If you see XML text instead of the Interface Builder editor for an Interface Builder file, open the Inspector area and set the File Type to “Default,” then close and re-open the document.
- Interface Builder objects are not automatically resized to fit their containers after certain operations. Choose Size to Fit from the Editor menu to ensure objects are the correct size.
- Views marked “hidden” in an Interface Builder document are not shown in the Interface Builder editor. Choose them from the Jump Bar or Document Outline view.
- Layout modes
- Class Browser. Use the symbol navigator and Class Navigation menu in the Editor.
- Active Target/Configuration/Architecture/SDK/Executable toolbar items and Project menu entries. Configure a Launch Scheme for a particular combination of target/configuration/architecture/SDK/executable that is useful to you using the Scheme toolbar popup.
- Bookmarks
- Favorites bar
- Detail views
- Class model
- Touch an individual file
- Recent Files menu item in the File menu. The Navigation buttons have a list of recent files. Also, use the filter in the project navigator to show all recently-viewed files in the project or workspace.
- Support for External Editors
- Worksheet (Control-R) execution of shell script commands in text documents
- Predictive Compilation (generally replaced by Fix-It Hints)
- Fix and Continue
- Breakpoint navigation menu in the jump bar
- Editing and compiling AppleScript .scpt files
- Perforce and CVS source code management
- Dock Icon Menu of open Xcode windows (in Snow Leopard, press and hold on the Dock tile to see all Xcode windows)
- Editing Carbon nib files. Xcode 4 supports building Carbon XIB and NIB files; use Interface Builder 3.2 to edit them.
Major Changes in Xcode 4
Known Missing Functionality in This Release
This Developer Release of Xcode 4 does not implement the following features.Known Problems in This Release
Xcode 4 Developer Preview is pre-release software. Please file bugs at http://bugreport.apple.com for performance and stability issues, data loss or file corruption, missing or unimplemented features, behavioral or aesthetic issues, and feature and enhancement requests. Provide as much context as possible, especially crash logs or samples, detailed Steps to Reproduce, and projects or workspaces when possible. These problems are already known in this release:Functionality No Longer Supported in Xcode
The following features and functionality have been removed from Xcode. When substitute functionality is available, it is noted.Xcode developer tools package
The Xcode developer tools package enhances the posibility to create great applications for Mac, iPhone, and iPad as per your requirements.
Xcode is highly syniced with with the Cocoa and Cocoa Touch frameworks, Create a easy-to-use development environment that enable to use same tools which are used by apple to produce os x and Iphone OS(IOS).xcode toolset has the excellent xcode IDE, with the Interface Builder Design tool and Apple LLVM compiler fully integrated. in addition, the Instruments analysis tools and many other developing tools supporting.
The Xcode workspace is all about keeping you focused. As you type, Live Issues will immediately alert you to coding mistakes, displaying a message bubble beside your code for more detail. Hit the Run button to launch your Mac app, or upload the app to your test device, and immediately start debugging. Hover the mouse pointer above a variable to inspect its value at runtime, never having lost your place in the editor.
By working closely with the developer web portal, Xcode provisions new iOS devices with a single click, can securely sign and archive your Mac or iOS app, and directly submit it to the App Store. Learn more about what's new in Xcode 4
Instruments collects data such as disk, memory, or CPU usage in real time, either on your Mac or remotely from a connected iPhone. The collected data is graphically displayed as tracks over time, making it easy to pinpoint problem areas, then drill down to the offending lines of code.
Instruments helps guarantee your gorgeous user interface will be accompanied by equally impressive responsiveness.
Xcode is highly syniced with with the Cocoa and Cocoa Touch frameworks, Create a easy-to-use development environment that enable to use same tools which are used by apple to produce os x and Iphone OS(IOS).xcode toolset has the excellent xcode IDE, with the Interface Builder Design tool and Apple LLVM compiler fully integrated. in addition, the Instruments analysis tools and many other developing tools supporting.
Xcode IDE
Designed from the ground up to take advantage of the newest Apple technologies, Xcode integrates all the tools you need. The unified interface smoothly transitions from composing source code, to debugging, and even to designing your next stunning user interface, all within the same window.The Xcode workspace is all about keeping you focused. As you type, Live Issues will immediately alert you to coding mistakes, displaying a message bubble beside your code for more detail. Hit the Run button to launch your Mac app, or upload the app to your test device, and immediately start debugging. Hover the mouse pointer above a variable to inspect its value at runtime, never having lost your place in the editor.
By working closely with the developer web portal, Xcode provisions new iOS devices with a single click, can securely sign and archive your Mac or iOS app, and directly submit it to the App Store. Learn more about what's new in Xcode 4
Apple LLVM Compiler
Apple’s next generation compiler technology, the Apple LLVM compiler, does more than build your app. Apple LLVM technology is integrated into the entire development experience. The same parser used to build C/C++ and Objective-C powers Xcode’s indexing engine, providing incredibly accurate code completions. As you work, Apple LLVM is constantly evaluating what you type, identifying coding mistakes that Xcode shows as Live Issues, and thinking ahead for ways to Fix-it for you. Other compilers can tell you what is wrong -- Apple LLVM can make it right.
Instruments for Performance and Behavior Analysis
A world-class Mac OS X or iOS application provides a great user experience, and that means more than beautiful images and intuitive design. Great applications must feel fast, respond quickly, and impress with smooth animations. To help make your app great, the Xcode developer tools include Instruments, a truly unique application that helps you track down performance bottlenecks in your Mac OS X and iOS apps.Instruments collects data such as disk, memory, or CPU usage in real time, either on your Mac or remotely from a connected iPhone. The collected data is graphically displayed as tracks over time, making it easy to pinpoint problem areas, then drill down to the offending lines of code.
Instruments helps guarantee your gorgeous user interface will be accompanied by equally impressive responsiveness.
iOS Simulator
The iOS Simulator runs your application in much the same way as an actual iOS device. Because it is quick to launch and debug, the iOS Simulator makes for a perfect test bed to make sure your user interface works the way you intend, your network calls are correct, and that the views change correctly when the phone rotates. You can even simulate touch gestures by using the mouse. The iOS Simulator is a great time saver.
Subscribe to:
Comments (Atom)