title: Selective versioning with SQLAlchemy
body: <p>In my app I need object modification history. This approach fits it quite nicely:</p>
  
  <p><a href="http://docs.sqlalchemy.org/en/rel_0_9/orm/examples.html#module-examples.versioned_history" rel="nofollow">http://docs.sqlalchemy.org/en/rel_0_9/orm/examples.html#module-examples.versioned_history</a></p>
  
  <p>However, since the data entered is quite complex, I do not want it saved every time with a new version; it's only after data validation, editing, etc. that the object should be committed and versioned upon modification from that moment on.</p>
  
  <p>Of course I can create a <code>MyClassScratchpad</code> for every <code>MyClass</code>, get users fill <code>MyClassScratchpad</code> instance and then copy to <code>MyClass</code> instance for versioning but that's rather cumbersome.</p>
  
  <p>Can versioning be suspended on an SQA object and then turned on later?</p>