QuizGenerator 0.6.0__tar.gz → 0.6.1__tar.gz

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.
Files changed (58) hide show
  1. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/PKG-INFO +1 -1
  2. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/contentast.py +17 -14
  3. quizgenerator-0.6.0/pyproject_prev.toml → quizgenerator-0.6.1/pyproject.toml +1 -1
  4. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/uv.lock +1 -1
  5. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/.envrc +0 -0
  6. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/.gitignore +0 -0
  7. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/CODEOWNERS +0 -0
  8. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/LICENSE +0 -0
  9. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/__init__.py +0 -0
  10. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/__main__.py +0 -0
  11. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/canvas/__init__.py +0 -0
  12. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/canvas/canvas_interface.py +0 -0
  13. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/canvas/classes.py +0 -0
  14. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/constants.py +0 -0
  15. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/generate.py +0 -0
  16. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/misc.py +0 -0
  17. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/mixins.py +0 -0
  18. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/performance.py +0 -0
  19. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/__init__.py +0 -0
  20. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/basic.py +0 -0
  21. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/__init__.py +0 -0
  22. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/languages.py +0 -0
  23. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/math_questions.py +0 -0
  24. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/memory_questions.py +0 -0
  25. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/ostep13_vsfs.py +0 -0
  26. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/persistence_questions.py +0 -0
  27. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst334/process.py +0 -0
  28. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/__init__.py +0 -0
  29. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/gradient_descent/__init__.py +0 -0
  30. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/gradient_descent/gradient_calculation.py +0 -0
  31. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/gradient_descent/gradient_descent_questions.py +0 -0
  32. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/gradient_descent/loss_calculations.py +0 -0
  33. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/gradient_descent/misc.py +0 -0
  34. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/math_and_data/__init__.py +0 -0
  35. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/math_and_data/matrix_questions.py +0 -0
  36. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/math_and_data/vector_questions.py +0 -0
  37. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/__init__.py +0 -0
  38. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/attention.py +0 -0
  39. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/cnns.py +0 -0
  40. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/matrices.py +0 -0
  41. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/rnns.py +0 -0
  42. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/text.py +0 -0
  43. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/models/weight_counting.py +0 -0
  44. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/neural-network-basics/__init__.py +0 -0
  45. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/neural-network-basics/neural_network_questions.py +0 -0
  46. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/tensorflow-intro/__init__.py +0 -0
  47. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/premade_questions/cst463/tensorflow-intro/tensorflow_questions.py +0 -0
  48. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/qrcode_generator.py +0 -0
  49. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/question.py +0 -0
  50. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/quiz.py +0 -0
  51. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/regenerate.py +0 -0
  52. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/QuizGenerator/typst_utils.py +0 -0
  53. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/README.md +0 -0
  54. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/examples/web_ui_integration_example.py +0 -0
  55. /quizgenerator-0.6.0/pyproject.toml → /quizgenerator-0.6.1/pyproject_prev.toml +0 -0
  56. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/scripts/generate_practice_yaml.sh +0 -0
  57. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/scripts/print.sh +0 -0
  58. {quizgenerator-0.6.0 → quizgenerator-0.6.1}/scripts/vendor_lms_interface.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: QuizGenerator
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Generate randomized quiz questions for Canvas LMS and PDF exams
5
5
  Project-URL: Homepage, https://github.com/OtterDen-Lab/QuizGenerator
6
6
  Project-URL: Documentation, https://github.com/OtterDen-Lab/QuizGenerator/tree/main/documentation
@@ -2338,6 +2338,23 @@ class ContentAST:
2338
2338
  d = decimal.Decimal(f.numerator).quantize(q, rounding=decimal.ROUND_HALF_UP)
2339
2339
  outs.add(format(d, 'f'))
2340
2340
 
2341
+ # Simple fraction
2342
+ if allow_simple_fraction:
2343
+ fr = f.limit_denominator(max_denominator)
2344
+ if fr == f:
2345
+ a, b = fr.numerator, fr.denominator
2346
+ if fr.denominator > 1:
2347
+ outs.add(f"{a}/{b}")
2348
+ if include_spaces:
2349
+ outs.add(f"{a} / {b}")
2350
+ if allow_mixed and b != 1 and abs(a) > b:
2351
+ sign = '-' if a < 0 else ''
2352
+ A = abs(a)
2353
+ whole, rem = divmod(A, b)
2354
+ outs.add(f"{sign}{whole} {rem}/{b}")
2355
+ else:
2356
+ return sorted(outs, key=lambda s: (len(s), s))
2357
+
2341
2358
  # Fixed-decimal form
2342
2359
  q = decimal.Decimal(1).scaleb(-ContentAST.Answer.DEFAULT_ROUNDING_DIGITS)
2343
2360
  d = (decimal.Decimal(f.numerator) / decimal.Decimal(f.denominator)).quantize(q, rounding=decimal.ROUND_HALF_UP)
@@ -2354,20 +2371,6 @@ class ContentAST:
2354
2371
  s = '0'
2355
2372
  outs.add(s)
2356
2373
 
2357
- # Simple fraction
2358
- if allow_simple_fraction:
2359
- fr = f.limit_denominator(max_denominator)
2360
- if fr == f:
2361
- a, b = fr.numerator, fr.denominator
2362
- outs.add(f"{a}/{b}")
2363
- if include_spaces:
2364
- outs.add(f"{a} / {b}")
2365
- if allow_mixed and b != 1 and abs(a) > b:
2366
- sign = '-' if a < 0 else ''
2367
- A = abs(a)
2368
- whole, rem = divmod(A, b)
2369
- outs.add(f"{sign}{whole} {rem}/{b}")
2370
-
2371
2374
  return sorted(outs, key=lambda s: (len(s), s))
2372
2375
 
2373
2376
  @staticmethod
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "QuizGenerator"
7
- version = "0.5.1"
7
+ version = "0.6.1"
8
8
  description = "Generate randomized quiz questions for Canvas LMS and PDF exams"
9
9
  readme = "README.md"
10
10
  license = {text = "GPL-3.0-or-later"}
@@ -1214,7 +1214,7 @@ wheels = [
1214
1214
 
1215
1215
  [[package]]
1216
1216
  name = "quizgenerator"
1217
- version = "0.6.0"
1217
+ version = "0.6.1"
1218
1218
  source = { editable = "." }
1219
1219
  dependencies = [
1220
1220
  { name = "canvasapi" },
File without changes
File without changes
File without changes
File without changes
File without changes