Xcode 8 NSManagedObject Extension Generation Broken
| Originator: | addison.f.webb | ||
| Number: | rdar://28795403 | Date Originated: | 10/17/16 |
| Status: | Open | Resolved: | |
| Product: | Xcode | Product Version: | 8.0 (8A218a) |
| Classification: | Reproducible: | Always |
Summary: When trying to generate extensions for entities in a Core Data Model, Xcode generates both a subclass and an extension. Steps to Reproduce: 1) Create a new single view project that uses Core Data 2) Add a simple entity, say a `Person` with a `firstName`, `lastName`, and `age`. 3) Select the Core Data model file 4) In the Data Model Inspector panel under the "Class" section, select "Category/Extension" for the Codegen option. 5) Verify in the File Inspector panel the Language in the "Code Generation" section is "Swift" 6) Editor > Create NSManagedObject Subclass ... 7) Follow the steps to generate the code Expected Results: One file per entity should be generated (EntityName+CoreDataProperties.swift). *Note: This behavior is described here: https://developer.apple.com/library/prerelease/content/releasenotes/General/WhatNewCoreData2016/ReleaseNotes.html Actual Results: Two files are generated. 1) EntityName+CoreDataProperties.swift 2) EntityName+CoreDataClass.swift *Note: This behavior is what I would expect for the "Class Definition" option. Version: macOS 10.12 (16A323) Xcode 8.0 (8A218a) Swift 3 Notes: I also tried using the "Class Definition" option and it generates the same files as the "Category/Extension" option.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!
Updated radar to reflect this is still an issue in Xcode 8.3 beta (8W109m).