title: Django migrations: what `elidable` argument is for?
body: <p>I have <code>RunPython</code> operations in my migrations, for example one of the migrations: </p>
  
  <pre><code>class DataMigration(migrations.Migration):
      dependencies = [('app1', '0001_initial')]
  
      operations = [
          migrations.RunPython(create_data, delete_data, elidable=True),
      ]
  </code></pre>
  
  <p>This operation accpets an optional <code>elidable</code> argument, which is described in <a href="https://docs.djangoproject.com/en/2.2/ref/migration-operations/#runpython" rel="nofollow noreferrer">the Django docs</a>:</p>
  
  <blockquote>
    <p>The optional elidable argument determines whether or not the operation
    will be removed (elided) when squashing migrations.</p>
  </blockquote>
  
  <p>This description is a little bit confusing for me. My question is: what happens, when migrations with <code>elidable=True</code> flag are squashed?</p>
  
  <p>I guess that migrations with <code>elidable=True</code> would be simply deleted. And some manual steps would have to be taken in order to add the logic of elided migrations into the squashed one.</p>