  
          # Create new instance
          return Snippet(**attrs)
  
  This would now be split out into two seperate methods.
  
      def update(self, instance, validated_attrs)
          instance.title = validated_attrs.get('title', instance.title)
          instance.code = validated_attrs.get('code', instance.code)
          instance.linenos = validated_attrs.get('linenos', instance.linenos)
 
</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 The `.restore_object()` method is now replaced with two seperate methods, `.create()` and `.update()`.
 </s> add The `.restore_object()` method is now replaced with two separate methods, `.create()` and `.update()`. </s> remove It's simple to create a read-only serializer for converting `HighScore` instances into primative data types.
 </s> add It's simple to create a read-only serializer for converting `HighScore` instances into primitive data types. </s> remove The following class is an example of a generic serializer that can handle coercing aribitrary objects into primative representations. 
 </s> add The following class is an example of a generic serializer that can handle coercing aribitrary objects into primitive representations.  </s> remove         # consider it, or treat PIL as a test dependancy.
 </s> add         # consider it, or treat PIL as a test dependency.
This would now be split out into two separate methods.
  
          # Create new instance
          return Snippet(**attrs)
  
This would now be split out into two separate methods.
  
      def update(self, instance, validated_attrs)
          instance.title = validated_attrs.get('title', instance.title)
          instance.code = validated_attrs.get('code', instance.code)
          instance.linenos = validated_attrs.get('linenos', instance.linenos)
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