PyKubeGrader 0.3.10__py3-none-any.whl → 0.3.11__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: PyKubeGrader
3
- Version: 0.3.10
3
+ Version: 0.3.11
4
4
  Summary: Add a short description here!
5
5
  Home-page: https://github.com/pyscaffold/pyscaffold/
6
6
  Author: jagar2
@@ -13,8 +13,8 @@ pykubegrader/build/markdown_questions.py,sha256=cSh8mkHK3hh-etJdgrZu9UQi1WPrKQto
13
13
  pykubegrader/grade_reports/__grade_reports.py,sha256=n8H_n9jdZRSPn2zlIf-GQt_Y8w91p6M8ZbdVH76Sg5k,2303
14
14
  pykubegrader/grade_reports/assignments.py,sha256=Wr5jvTeQ0a7Fl89e6EzXKqjhLrsA6KyObOdrJdN1V0Y,7614
15
15
  pykubegrader/grade_reports/class_grade_report.py,sha256=9Uuvy-xoABtjTjv-05VYhmowebgTrgEFSgh1Grws-cQ,5078
16
- pykubegrader/grade_reports/grade_report.py,sha256=wxgSGjvX9rcE0s9Up2zxPACGv78sJ3TvP8px3bc7t-c,13993
17
- pykubegrader/grade_reports/grading_config.py,sha256=_Wki6ju6OkqIuwEl-YMpYJcG5Yeu5wid-NEUN5Oxshs,2332
16
+ pykubegrader/grade_reports/grade_report.py,sha256=jhWCtGADM3v9U2HhZUWpVBipvUuHvvOIhbftL2r0FKU,13735
17
+ pykubegrader/grade_reports/grading_config.py,sha256=o_68FrjOLQWqDzEptnA8p42zClLHyqEadAiaa9K2cm0,2374
18
18
  pykubegrader/grade_reports/test.ipynb,sha256=NkMZHcfBd-uJw3i1Y9ux-epBP5GiVFEhda5wxEbK0cU,808
19
19
  pykubegrader/graders/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
20
20
  pykubegrader/graders/late_assignments.py,sha256=_2-rA5RqO0BWY9WAQA_mbCxxPKTOiJOl-byD2CYWaE0,1393
@@ -39,9 +39,9 @@ pykubegrader/widgets_base/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-
39
39
  pykubegrader/widgets_base/multi_select.py,sha256=WhpS7a8V3BOuEfEyFPzcDhMbgr7p1a4FFh_mKU1HLbI,4226
40
40
  pykubegrader/widgets_base/reading.py,sha256=ChUS3NOTa_HLtNpxR8hGX80LPKMvYMypnR6dFknfxus,5430
41
41
  pykubegrader/widgets_base/select.py,sha256=qP31bjTWIn8LEgKwtNUJbgJnum6P7bx6A_At-u1ivFk,2750
42
- PyKubeGrader-0.3.10.dist-info/LICENSE.txt,sha256=YTp-Ewc8Kems8PJEE27KnBPFnZSxoWvSg7nnknzPyYw,1546
43
- PyKubeGrader-0.3.10.dist-info/METADATA,sha256=lM-bIik76huAUbqHX0y0fhftiNbaOUoDwDTt6Ut7b8Q,2758
44
- PyKubeGrader-0.3.10.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
45
- PyKubeGrader-0.3.10.dist-info/entry_points.txt,sha256=RR57KvzDRJrP4omy5heS5cZ3E7g56YxcxJhDnp57ZU0,253
46
- PyKubeGrader-0.3.10.dist-info/top_level.txt,sha256=e550Klfze6higFxER1V62fnGOcIgiKRbsrl9CC4UdtQ,13
47
- PyKubeGrader-0.3.10.dist-info/RECORD,,
42
+ PyKubeGrader-0.3.11.dist-info/LICENSE.txt,sha256=YTp-Ewc8Kems8PJEE27KnBPFnZSxoWvSg7nnknzPyYw,1546
43
+ PyKubeGrader-0.3.11.dist-info/METADATA,sha256=FjeZZHM6puTdeXBo7buuWJ6IedQD0C-JkED8A3DsQZs,2758
44
+ PyKubeGrader-0.3.11.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
45
+ PyKubeGrader-0.3.11.dist-info/entry_points.txt,sha256=RR57KvzDRJrP4omy5heS5cZ3E7g56YxcxJhDnp57ZU0,253
46
+ PyKubeGrader-0.3.11.dist-info/top_level.txt,sha256=e550Klfze6higFxER1V62fnGOcIgiKRbsrl9CC4UdtQ,13
47
+ PyKubeGrader-0.3.11.dist-info/RECORD,,
@@ -337,17 +337,13 @@ class GradeReport:
337
337
 
338
338
  # Exempt the lowest `n` assignments
339
339
  dropped = []
340
- for i in range(min(n, len(valid_assignments))):
340
+ i = -1
341
+ while i < n:
342
+ i += 1
341
343
  valid_assignments[i].exempted = True
344
+ if valid_assignments[i].week in self.optional_drop_week:
345
+ continue
342
346
  dropped.append(valid_assignments[i])
343
347
  self.student_assignments_dropped.append(valid_assignments[i])
344
-
345
- # Check if the lowest dropped assignment is from week 1
346
- if dropped and any(a.week in self.optional_drop_week for a in dropped):
347
- # Find the next lowest non-exempted assignment and drop it
348
- for a in valid_assignments:
349
- if not a.exempted:
350
- a.exempted = True
351
- break
352
-
348
+
353
349
  self.calculate_grades()
@@ -21,7 +21,8 @@ custom_grade_adjustments = {
21
21
  ("lecture", 3): lambda score: 100.0 if score > 0 else 0.0,
22
22
  ("lecture", 4): lambda score: 100.0 if score > 0 else 0.0,
23
23
  ("lecture", 5): lambda score: 100.0 if score > 0 else 0.0,
24
- }
24
+ ("lecture", 7): lambda score: 100.0,
25
+ }
25
26
 
26
27
  # Exempted assignments, key is a tuple of assignment type and week
27
28
  globally_exempted_assignments = [