          serializer.save(extras=extras)
  
  #### Limitations of ModelSerializer validation.
  
  This change also means that we no longer use the `.full_clean()` method on model instances, but instead perform all validation explicitly on the serializer. This gives a cleaner seperation, and ensures that there's no automatic validation behavior on `ModelSerializer` classes that can't also be easily replicated on regular `Serializer` classes.
  
  This change comes with the following limitations:
  
  * The model `.clean()` method will not be called as part of serializer validation. Use the serializer `.validate()` method to perform a final validation step on incoming data where required.
  * The `.unique_for_date`, `.unique_for_month` and `.unique_for_year` options on model fields are not automatically validated. Again, you'll need to handle these explicitly on the serializer if required.
 
</s> remove * There can be complex dependancies involved in order of saving multiple related model instances.
 </s> add * There can be complex dependencies involved in order of saving multiple related model instances. </s> remove * Some data, such as many-to-many relationships, cannot be added to the object instance until after it has been saved. This type of data needed to be hidden in some undocumentated state on the object instance, or kept as state on the serializer instance so that it could be used when `.save()` is called.
 </s> add * Some data, such as many-to-many relationships, cannot be added to the object instance until after it has been saved. This type of data needed to be hidden in some undocumented state on the object instance, or kept as state on the serializer instance so that it could be used when `.save()` is called. </s> remove This gives us better seperation of concerns, allows us to use single-step
 </s> add This gives us better separation of concerns, allows us to use single-step </s> remove The most notable outstanding issues still to resolved on the `version-3.0` branch are as follows:
 </s> add The most notable outstanding issues still to be resolved on the `version-3.0` branch are as follows: </s> remove * Optimisations for serialializing primary keys.
 </s> add * Optimisations for serializing primary keys.
This change also means that we no longer use the `.full_clean()` method on model instances, but instead perform all validation explicitly on the serializer. This gives a cleaner separation, and ensures that there's no automatic validation behavior on `ModelSerializer` classes that can't also be easily replicated on regular `Serializer` classes.
          serializer.save(extras=extras)
  
  #### Limitations of ModelSerializer validation.
  
This change also means that we no longer use the `.full_clean()` method on model instances, but instead perform all validation explicitly on the serializer. This gives a cleaner separation, and ensures that there's no automatic validation behavior on `ModelSerializer` classes that can't also be easily replicated on regular `Serializer` classes.
  
  This change comes with the following limitations:
  
  * The model `.clean()` method will not be called as part of serializer validation. Use the serializer `.validate()` method to perform a final validation step on incoming data where required.
  * The `.unique_for_date`, `.unique_for_month` and `.unique_for_year` options on model fields are not automatically validated. Again, you'll need to handle these explicitly on the serializer if required.
keep keep keep keep replace keep keep keep keep keep
 Minor: fix spelling and grammar, mostly in 3.0 announcement 
docs/topics/3.0-announcement.md