title: Add deprecation to a Core Data object or attributes
body: <p>We are making a big change to our Core Data model. There are a couple of attributes that we don't want to use anymore. For example, the following <code>values</code> for <code>SomeObject</code>. </p>
  
  <p>However, we don't want to simply remove <code>values</code> from our Core Data yet because we are using it everywhere in our project. </p>
  
  <p>I am wondering whether it is possible to add a <code>deprecation</code> tag to some of the attributes in Core Data, so that we will get some warning whenever we use them. </p>
  
  <pre><code>@interface SomeObject : _SomeObject
  // ... 
  @end
  
  @interface _SomeObject : NSManagedObject {}
  @property (nonatomic, strong) NSNumber* values;
  // and a massive amount of auto-generated code by core data
  @end
  </code></pre>
  
  <p>And then I saw this <a href="https://stackoverflow.com/questions/3908715/how-do-i-flag-a-method-as-deprecated-in-objective-c-2-0">post about how to flag a method as deprecated in objective C</a>. And I tried adding the deprecation tag inside the <code>_SomeObject.h</code> such as:</p>
  
  <pre><code>@interface _SomeObject : NSManagedObject {}
  @property (nonatomic, strong) NSNumber* values __attribute__((deprecated));
  // and a massive amount of auto-generated code by core data
  @end
  </code></pre>
  
  <p>And it works exactly the way as we want where we have <code>'values' is deprecated</code> warnings all over the place. So we will be able to focus on all these warnings and fix all of them before our next ship. But one thing that I don't feel quite comfortable about is that we are modifying the auto generated code by Core Data. </p>
  
  <p>So finally, my question is: </p>
  
  <p><strong>Is it possible to add deprecation to methods without touching the <code>_SomeObject.h</code> file?</strong> </p>