@@ -65,6 +65,7 @@ def handle(self, *args, **options):
6565 migrated_complete = 0
6666 old_style_fixed = 0
6767 old_style_complete = 0
68+ incomplete_fixed = 0
6869 exercises_checked = 0
6970
7071 for node in queryset .iterator (chunk_size = CHUNKSIZE ):
@@ -77,6 +78,8 @@ def handle(self, *args, **options):
7778 migrated_fixed += 1
7879 if complete :
7980 migrated_complete += 1
81+ elif fix_type == "incomplete" and complete :
82+ incomplete_fixed += 1
8083 exercises_checked += 1
8184 if exercises_checked % CHUNKSIZE == 0 :
8285 logging .info (
@@ -92,6 +95,11 @@ def handle(self, *args, **options):
9295 migrated_complete , migrated_fixed
9396 )
9497 )
98+ logging .info (
99+ "{} marked complete that were previously incomplete" .format (
100+ incomplete_fixed
101+ )
102+ )
95103
96104 logging .info ("{} / {} exercises checked" .format (exercises_checked , total ))
97105 logging .info (
@@ -104,18 +112,26 @@ def handle(self, *args, **options):
104112 migrated_complete , migrated_fixed
105113 )
106114 )
115+ logging .info (
116+ "{} marked complete that were previously incomplete" .format (
117+ incomplete_fixed
118+ )
119+ )
107120 logging .info (
108121 "Done in {:.1f}s. Fixed {} migrated exercises, "
109- "migrated {} old-style exercises.{}" .format (
122+ "migrated {} old-style exercises."
123+ "marked {} previously incomplete exercises complete. {}" .format (
110124 time .time () - start ,
111125 migrated_fixed ,
112126 old_style_fixed ,
127+ incomplete_fixed ,
113128 " (dry run)" if dry_run else "" ,
114129 )
115130 )
116131
117132 def _process_node (self , node , dry_run ):
118133 ef = node .extra_fields
134+ was_complete = node .complete
119135 if isinstance (ef , str ):
120136 try :
121137 ef = json .loads (ef )
@@ -131,6 +147,8 @@ def _process_node(self, node, dry_run):
131147 ef ["options" ]["completion_criteria" ]["threshold" ]["m" ] = None
132148 ef ["options" ]["completion_criteria" ]["threshold" ]["n" ] = None
133149 fix_type = "m_n_fix"
150+ elif not was_complete :
151+ fix_type = "incomplete"
134152 else :
135153 return None , None
136154 node .extra_fields = ef
0 commit comments