                  (executor.loader.graph.nodes["sessions", "0001_initial"], False),
              ],
          )
          # Fake-apply all migrations
          executor.migrate([("migrations", "0002_second"), ("sessions", "0001_initial")], fake=True)
          # Rebuild the graph to reflect the new DB state
          executor.loader.build_graph()
          # Now plan a second time and make sure it's empty
          plan = executor.migration_plan([("migrations", "0002_second"), ("sessions", "0001_initial")])
          self.assertEqual(plan, [])
 
</s> remove                 (executor.loader.graph.nodes["sessions", "0001_initial"], False),
 </s> add                 (executor.loader.graph.nodes["migrations2", "0001_initial"], False), </s> remove         plan = executor.migration_plan([("migrations", "0002_second"), ("sessions", "0001_initial")])
 </s> add         plan = executor.migration_plan([
            ("migrations", "0002_second"),
            ("migrations2", "0001_initial"),
        ]) </s> remove         executor.recorder.record_unapplied("sessions", "0001_initial")
 </s> add         executor.recorder.record_unapplied("migrations2", "0001_initial") </s> remove         plan = executor.migration_plan([("migrations", "0002_second"), ("sessions", "0001_initial")])
 </s> add         plan = executor.migration_plan([
            ("migrations", "0002_second"),
            ("migrations2", "0001_initial"),
        ]) </s> remove         # We use 'sessions' here as the second app as it's always present
        # in INSTALLED_APPS, so we can happily assign it test migrations.
 </s> add 
        executor.migrate([
            ("migrations", "0002_second"),
            ("migrations2", "0001_initial")
        ], fake=True)
                  (executor.loader.graph.nodes["sessions", "0001_initial"], False),
              ],
          )
          # Fake-apply all migrations
        executor.migrate([
            ("migrations", "0002_second"),
            ("migrations2", "0001_initial")
        ], fake=True)
          # Rebuild the graph to reflect the new DB state
          executor.loader.build_graph()
          # Now plan a second time and make sure it's empty
          plan = executor.migration_plan([("migrations", "0002_second"), ("sessions", "0001_initial")])
          self.assertEqual(plan, [])
keep keep keep keep replace keep keep keep keep keep
 Removed usaged of contrib.sessions as a placeholder in migration tests.

Without this, we're unable to add actual migrations for the app. 
tests/migrations/test_executor.py