diff --git a/.buildinfo b/.buildinfo index 1bb8167..a03a9b5 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file records the configuration used when building these files. When it is not found, a full rebuild will be done. -config: a74a8924d91f4e925fbae228de24dd9a +config: 71b532e58f2603bf3b3c2fbd95bfe219 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/_modules/index.html b/_modules/index.html index ea70c7d..a8412de 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -7,7 +7,7 @@ - Overview: module code — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Overview: module code — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/initialize.html b/_modules/pykubegrader/initialize.html index 682d344..19196b5 100644 --- a/_modules/pykubegrader/initialize.html +++ b/_modules/pykubegrader/initialize.html @@ -7,7 +7,7 @@ - pykubegrader.initialize — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.initialize — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/misc.html b/_modules/pykubegrader/misc.html index 1021cad..121b926 100644 --- a/_modules/pykubegrader/misc.html +++ b/_modules/pykubegrader/misc.html @@ -7,7 +7,7 @@ - pykubegrader.misc — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.misc — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/telemetry.html b/_modules/pykubegrader/telemetry.html index bb09c82..00bb9c4 100644 --- a/_modules/pykubegrader/telemetry.html +++ b/_modules/pykubegrader/telemetry.html @@ -7,7 +7,7 @@ - pykubegrader.telemetry — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.telemetry — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/validate.html b/_modules/pykubegrader/validate.html index e92be09..a9d1bd7 100644 --- a/_modules/pykubegrader/validate.html +++ b/_modules/pykubegrader/validate.html @@ -7,7 +7,7 @@ - pykubegrader.validate — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.validate — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home @@ -540,7 +540,7 @@

Source code for pykubegrader.validate

                 return entry
         return ""
 
-    def get_len_of_entries(data, question_number) -> int:
+    def get_entries_len(data: list[str], question_number: int) -> int:
         """function to get the unique entries by length
 
         Args:
@@ -581,7 +581,7 @@ 

Source code for pykubegrader.validate

         # Collect entries for each question in a list.
         entries = [
             entry
-            for j in range(1, get_len_of_entries(data, i))
+            for j in range(1, get_entries_len(data, i))
             if (entry := get_last_entry(data, f"q{i}_{j}")) != ""
         ]
 
@@ -647,7 +647,7 @@ 

Source code for pykubegrader.validate

         print("Writing to results.json")
         json.dump(result_structure, file, indent=4)
 
-    login_(login_data, login_url)
+    verify_login(login_data, login_url)
 
     # The file to be uploaded. Ensure the path is correct.
     file_path = "results.json"
@@ -683,18 +683,9 @@ 

Source code for pykubegrader.validate

 
 
 
-
-[docs] -def login_(login_data, login_url): - login_response = requests.post( - login_url, auth=HTTPBasicAuth(login_data["username"], login_data["password"]) - ) - - if login_response.status_code == 200: - print("Login successful") - else: - Exception("Login failed")
- +# +# Helper functions +#
@@ -717,6 +708,20 @@

Source code for pykubegrader.validate

     else:
         print("results.json was not present")
+ + +
+[docs] +def verify_login(login_data, login_url): + login_response = requests.post( + login_url, auth=HTTPBasicAuth(login_data["username"], login_data["password"]) + ) + + if login_response.status_code == 200: + print("Login successful") + else: + Exception("Login failed")
+
diff --git a/_modules/pykubegrader/widgets/multiple_choice.html b/_modules/pykubegrader/widgets/multiple_choice.html index fc3d70f..282c33e 100644 --- a/_modules/pykubegrader/widgets/multiple_choice.html +++ b/_modules/pykubegrader/widgets/multiple_choice.html @@ -7,7 +7,7 @@ - pykubegrader.widgets.multiple_choice — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets.multiple_choice — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home
diff --git a/_modules/pykubegrader/widgets/reading_question.html b/_modules/pykubegrader/widgets/reading_question.html index fd5269d..257ecfd 100644 --- a/_modules/pykubegrader/widgets/reading_question.html +++ b/_modules/pykubegrader/widgets/reading_question.html @@ -7,7 +7,7 @@ - pykubegrader.widgets.reading_question — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets.reading_question — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home
diff --git a/_modules/pykubegrader/widgets/select_many.html b/_modules/pykubegrader/widgets/select_many.html index fcf957b..d80d0e8 100644 --- a/_modules/pykubegrader/widgets/select_many.html +++ b/_modules/pykubegrader/widgets/select_many.html @@ -7,7 +7,7 @@ - pykubegrader.widgets.select_many — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets.select_many — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home
diff --git a/_modules/pykubegrader/widgets/student_info.html b/_modules/pykubegrader/widgets/student_info.html index a6757c0..265cd39 100644 --- a/_modules/pykubegrader/widgets/student_info.html +++ b/_modules/pykubegrader/widgets/student_info.html @@ -7,7 +7,7 @@ - pykubegrader.widgets.student_info — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets.student_info — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/widgets/types_question.html b/_modules/pykubegrader/widgets/types_question.html index 47ccc67..7b1ae93 100644 --- a/_modules/pykubegrader/widgets/types_question.html +++ b/_modules/pykubegrader/widgets/types_question.html @@ -7,7 +7,7 @@ - pykubegrader.widgets.types_question — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets.types_question — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/widgets_base/multi_select.html b/_modules/pykubegrader/widgets_base/multi_select.html index a1c739a..0dfd674 100644 --- a/_modules/pykubegrader/widgets_base/multi_select.html +++ b/_modules/pykubegrader/widgets_base/multi_select.html @@ -7,7 +7,7 @@ - pykubegrader.widgets_base.multi_select — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets_base.multi_select — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/widgets_base/reading.html b/_modules/pykubegrader/widgets_base/reading.html index 334285b..50384d5 100644 --- a/_modules/pykubegrader/widgets_base/reading.html +++ b/_modules/pykubegrader/widgets_base/reading.html @@ -7,7 +7,7 @@ - pykubegrader.widgets_base.reading — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets_base.reading — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_modules/pykubegrader/widgets_base/select.html b/_modules/pykubegrader/widgets_base/select.html index 06f9c9b..58cc900 100644 --- a/_modules/pykubegrader/widgets_base/select.html +++ b/_modules/pykubegrader/widgets_base/select.html @@ -7,7 +7,7 @@ - pykubegrader.widgets_base.select — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets_base.select — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 94363bf..c342ef2 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '0.0.post1.dev1+g1b77c28', + VERSION: '0.0.post1.dev1+gfe35314', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/api/modules.html b/api/modules.html index c399734..ba72d29 100644 --- a/api/modules.html +++ b/api/modules.html @@ -8,7 +8,7 @@ - pykubegrader — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home @@ -463,9 +463,9 @@

pykubegraderpykubegrader.validate module
  • Module contents
  • diff --git a/api/pykubegrader.html b/api/pykubegrader.html index 4f6fba1..8c54f2e 100644 --- a/api/pykubegrader.html +++ b/api/pykubegrader.html @@ -8,7 +8,7 @@ - pykubegrader package — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader package — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home @@ -562,11 +562,6 @@

    Submodules

    pykubegrader.validate module#

    -
    -
    -pykubegrader.validate.login_(login_data, login_url)[source]#
    -
    -
    pykubegrader.validate.submission_message(response) None[source]#
    @@ -577,6 +572,11 @@

    Submodulespykubegrader.validate.validate_logfile(filepath: str, assignment_id: str, question_max_scores: dict[int, int], free_response_questions=0, username='student', password='capture', post_url='http://localhost:8000/upload-score', login_url='http://localhost:8000/login') None[source]#

    +
    +
    +pykubegrader.validate.verify_login(login_data, login_url)[source]#
    +
    +

    Module contents#

    @@ -654,9 +654,9 @@

    Submodulespykubegrader.validate module
  • Module contents
  • diff --git a/api/pykubegrader.widgets.html b/api/pykubegrader.widgets.html index c936f83..8730c1c 100644 --- a/api/pykubegrader.widgets.html +++ b/api/pykubegrader.widgets.html @@ -8,7 +8,7 @@ - pykubegrader.widgets package — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets package — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/api/pykubegrader.widgets_base.html b/api/pykubegrader.widgets_base.html index 63439c4..6e75d1d 100644 --- a/api/pykubegrader.widgets_base.html +++ b/api/pykubegrader.widgets_base.html @@ -8,7 +8,7 @@ - pykubegrader.widgets_base package — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + pykubegrader.widgets_base package — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -117,8 +117,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/authors.html b/authors.html index 5714a38..3182f0a 100644 --- a/authors.html +++ b/authors.html @@ -8,7 +8,7 @@ - Contributors — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Contributors — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/changelog.html b/changelog.html index d477808..a617811 100644 --- a/changelog.html +++ b/changelog.html @@ -8,7 +8,7 @@ - Changelog — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Changelog — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/contributing.html b/contributing.html index a410832..9beb872 100644 --- a/contributing.html +++ b/contributing.html @@ -8,7 +8,7 @@ - Contributing — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Contributing — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/genindex.html b/genindex.html index e88fcca..a137f0c 100644 --- a/genindex.html +++ b/genindex.html @@ -7,7 +7,7 @@ - Index — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Index — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -48,7 +48,7 @@ - + @@ -115,8 +115,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home @@ -409,14 +409,12 @@

    L

    @@ -669,6 +667,10 @@

    V

    +
    diff --git a/index.html b/index.html index aa95813..1f88907 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ - PyKubeGrader — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + PyKubeGrader — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -117,8 +117,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/license.html b/license.html index dd7d4fc..1af7292 100644 --- a/license.html +++ b/license.html @@ -8,7 +8,7 @@ - License — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + License — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/objects.inv b/objects.inv index e1366ea..580d541 100644 Binary files a/objects.inv and b/objects.inv differ diff --git a/py-modindex.html b/py-modindex.html index 0f8acde..2512329 100644 --- a/py-modindex.html +++ b/py-modindex.html @@ -7,7 +7,7 @@ - Python Module Index — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Python Module Index — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -39,7 +39,7 @@ - + @@ -49,7 +49,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/readme.html b/readme.html index bd9393c..021f3b1 100644 --- a/readme.html +++ b/readme.html @@ -8,7 +8,7 @@ - PyKubeGrader — PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + PyKubeGrader — PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -40,7 +40,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -118,8 +118,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/search.html b/search.html index 48bbc0f..523e2f1 100644 --- a/search.html +++ b/search.html @@ -6,7 +6,7 @@ - Search - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation + Search - PyKubeGrader 0.0.post1.dev1+gfe35314 documentation @@ -38,7 +38,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -117,8 +117,8 @@ - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home - PyKubeGrader 0.0.post1.dev1+g1b77c28 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home + PyKubeGrader 0.0.post1.dev1+gfe35314 documentation - Home diff --git a/searchindex.js b/searchindex.js index 16f5e33..431490e 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"Changelog": [[5, null]], "Clone the repository": [[6, "clone-the-repository"]], "Code Contributions": [[6, "code-contributions"]], "Contents": [[7, "contents"]], "Contributing": [[6, "contributing"]], "Contributors": [[4, null]], "Create an environment": [[6, "create-an-environment"]], "Documentation Improvements": [[6, "documentation-improvements"]], "Implement your changes": [[6, "implement-your-changes"]], "Indices and tables": [[7, "indices-and-tables"]], "Issue Reports": [[6, "issue-reports"]], "License": [[8, null]], "Maintainer tasks": [[6, "maintainer-tasks"]], "Module contents": [[1, "module-pykubegrader"], [2, "module-pykubegrader.widgets"], [3, "module-pykubegrader.widgets_base"]], "Note": [[9, "note"]], "PyKubeGrader": [[7, null], [9, null]], "Releases": [[6, "releases"]], "Submit an issue": [[6, "submit-an-issue"]], "Submit your contribution": [[6, "submit-your-contribution"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"]], "Subpackages": [[1, "subpackages"]], "Todo": [[6, null], [6, "id2"], [6, "id3"], [6, "id5"], [6, "id6"], [6, "id7"], [6, "id8"], [6, "id9"], [6, "id10"], [6, "id11"], [6, "id12"]], "Troubleshooting": [[6, "troubleshooting"]], "Version 0.1": [[5, "version-0-1"]], "pykubegrader": [[0, null]], "pykubegrader package": [[1, null]], "pykubegrader.initialize module": [[1, "module-pykubegrader.initialize"]], "pykubegrader.misc module": [[1, "module-pykubegrader.misc"]], "pykubegrader.telemetry module": [[1, "module-pykubegrader.telemetry"]], "pykubegrader.validate module": [[1, "module-pykubegrader.validate"]], "pykubegrader.widgets package": [[2, null]], "pykubegrader.widgets.multiple_choice module": [[2, "module-pykubegrader.widgets.multiple_choice"]], "pykubegrader.widgets.reading_question module": [[2, "module-pykubegrader.widgets.reading_question"]], "pykubegrader.widgets.select_many module": [[2, "module-pykubegrader.widgets.select_many"]], "pykubegrader.widgets.student_info module": [[2, "module-pykubegrader.widgets.student_info"]], "pykubegrader.widgets.types_question module": [[2, "module-pykubegrader.widgets.types_question"]], "pykubegrader.widgets_base package": [[3, null]], "pykubegrader.widgets_base.multi_select module": [[3, "module-pykubegrader.widgets_base.multi_select"]], "pykubegrader.widgets_base.reading module": [[3, "module-pykubegrader.widgets_base.reading"]], "pykubegrader.widgets_base.select module": [[3, "module-pykubegrader.widgets_base.select"]]}, "docnames": ["api/modules", "api/pykubegrader", "api/pykubegrader.widgets", "api/pykubegrader.widgets_base", "authors", "changelog", "contributing", "index", "license", "readme"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/modules.rst", "api/pykubegrader.rst", "api/pykubegrader.widgets.rst", "api/pykubegrader.widgets_base.rst", "authors.rst", "changelog.rst", "contributing.rst", "index.rst", "license.rst", "readme.rst"], "indexentries": {"encrypt_to_b64() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.encrypt_to_b64", false]], "ensure_responses() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.ensure_responses", false]], "initialize_assignment() (in module pykubegrader.initialize)": [[1, "pykubegrader.initialize.initialize_assignment", false]], "list_of_lists() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.list_of_lists", false]], "log_encrypted() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.log_encrypted", false]], "log_variable() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.log_variable", false]], "login_() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.login_", false]], "mcq() (in module pykubegrader.widgets.multiple_choice)": [[2, "pykubegrader.widgets.multiple_choice.MCQ", false]], "mcquestion (class in pykubegrader.widgets.multiple_choice)": [[2, "pykubegrader.widgets.multiple_choice.MCQuestion", false]], "module": [[1, "module-pykubegrader", false], [1, "module-pykubegrader.initialize", false], [1, "module-pykubegrader.misc", false], [1, "module-pykubegrader.telemetry", false], [1, "module-pykubegrader.validate", false], [2, "module-pykubegrader.widgets", false], [2, "module-pykubegrader.widgets.multiple_choice", false], [2, "module-pykubegrader.widgets.reading_question", false], [2, "module-pykubegrader.widgets.select_many", false], [2, "module-pykubegrader.widgets.student_info", false], [2, "module-pykubegrader.widgets.types_question", false], [3, "module-pykubegrader.widgets_base", false], [3, "module-pykubegrader.widgets_base.multi_select", false], [3, "module-pykubegrader.widgets_base.reading", false], [3, "module-pykubegrader.widgets_base.select", false]], "multiplechoice() (in module pykubegrader.widgets.types_question)": [[2, "pykubegrader.widgets.types_question.MultipleChoice", false]], "multiselect() (in module pykubegrader.widgets.select_many)": [[2, "pykubegrader.widgets.select_many.MultiSelect", false]], "multiselectquestion (class in pykubegrader.widgets_base.multi_select)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion", false]], "pykubegrader": [[1, "module-pykubegrader", false]], "pykubegrader.initialize": [[1, "module-pykubegrader.initialize", false]], "pykubegrader.misc": [[1, "module-pykubegrader.misc", false]], "pykubegrader.telemetry": [[1, "module-pykubegrader.telemetry", false]], "pykubegrader.validate": [[1, "module-pykubegrader.validate", false]], "pykubegrader.widgets": [[2, "module-pykubegrader.widgets", false]], "pykubegrader.widgets.multiple_choice": [[2, "module-pykubegrader.widgets.multiple_choice", false]], "pykubegrader.widgets.reading_question": [[2, "module-pykubegrader.widgets.reading_question", false]], "pykubegrader.widgets.select_many": [[2, "module-pykubegrader.widgets.select_many", false]], "pykubegrader.widgets.student_info": [[2, "module-pykubegrader.widgets.student_info", false]], "pykubegrader.widgets.types_question": [[2, "module-pykubegrader.widgets.types_question", false]], "pykubegrader.widgets_base": [[3, "module-pykubegrader.widgets_base", false]], "pykubegrader.widgets_base.multi_select": [[3, "module-pykubegrader.widgets_base.multi_select", false]], "pykubegrader.widgets_base.reading": [[3, "module-pykubegrader.widgets_base.reading", false]], "pykubegrader.widgets_base.select": [[3, "module-pykubegrader.widgets_base.select", false]], "readingpython (class in pykubegrader.widgets_base.reading)": [[3, "pykubegrader.widgets_base.reading.ReadingPython", false]], "readingpythonquestion (class in pykubegrader.widgets.reading_question)": [[2, "pykubegrader.widgets.reading_question.ReadingPythonQuestion", false]], "record_responses() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.record_responses", false]], "score_question() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.score_question", false]], "selectmany (class in pykubegrader.widgets.select_many)": [[2, "pykubegrader.widgets.select_many.SelectMany", false]], "selectquestion (class in pykubegrader.widgets_base.select)": [[3, "pykubegrader.widgets_base.select.SelectQuestion", false]], "show() (pykubegrader.widgets.student_info.studentinfoform method)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm.show", false]], "show() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.show", false]], "show() (pykubegrader.widgets_base.reading.readingpython method)": [[3, "pykubegrader.widgets_base.reading.ReadingPython.show", false]], "show() (pykubegrader.widgets_base.select.selectquestion method)": [[3, "pykubegrader.widgets_base.select.SelectQuestion.show", false]], "shuffle_options() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.shuffle_options", false]], "shuffle_questions() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.shuffle_questions", false]], "studentinfoform (class in pykubegrader.widgets.student_info)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm", false]], "submission_message() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.submission_message", false]], "submit() (pykubegrader.widgets.student_info.studentinfoform method)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm.submit", false]], "submit() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.submit", false]], "submit() (pykubegrader.widgets_base.reading.readingpython method)": [[3, "pykubegrader.widgets_base.reading.ReadingPython.submit", false]], "submit() (pykubegrader.widgets_base.select.selectquestion method)": [[3, "pykubegrader.widgets_base.select.SelectQuestion.submit", false]], "submit_question_new() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.submit_question_new", false]], "telemetry() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.telemetry", false]], "typesquestion (class in pykubegrader.widgets.types_question)": [[2, "pykubegrader.widgets.types_question.TypesQuestion", false]], "update_responses() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.update_responses", false]], "validate_logfile() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.validate_logfile", false]]}, "objects": {"": [[1, 0, 0, "-", "pykubegrader"]], "pykubegrader": [[1, 0, 0, "-", "initialize"], [1, 0, 0, "-", "misc"], [1, 0, 0, "-", "telemetry"], [1, 0, 0, "-", "validate"], [2, 0, 0, "-", "widgets"], [3, 0, 0, "-", "widgets_base"]], "pykubegrader.initialize": [[1, 1, 1, "", "initialize_assignment"]], "pykubegrader.misc": [[1, 1, 1, "", "list_of_lists"], [1, 1, 1, "", "shuffle_options"], [1, 1, 1, "", "shuffle_questions"]], "pykubegrader.telemetry": [[1, 1, 1, "", "encrypt_to_b64"], [1, 1, 1, "", "ensure_responses"], [1, 1, 1, "", "log_encrypted"], [1, 1, 1, "", "log_variable"], [1, 1, 1, "", "score_question"], [1, 1, 1, "", "submit_question_new"], [1, 1, 1, "", "telemetry"], [1, 1, 1, "", "update_responses"]], "pykubegrader.validate": [[1, 1, 1, "", "login_"], [1, 1, 1, "", "submission_message"], [1, 1, 1, "", "validate_logfile"]], "pykubegrader.widgets": [[2, 0, 0, "-", "multiple_choice"], [2, 0, 0, "-", "reading_question"], [2, 0, 0, "-", "select_many"], [2, 0, 0, "-", "student_info"], [2, 0, 0, "-", "types_question"]], "pykubegrader.widgets.multiple_choice": [[2, 1, 1, "", "MCQ"], [2, 2, 1, "", "MCQuestion"]], "pykubegrader.widgets.reading_question": [[2, 2, 1, "", "ReadingPythonQuestion"]], "pykubegrader.widgets.select_many": [[2, 1, 1, "", "MultiSelect"], [2, 2, 1, "", "SelectMany"]], "pykubegrader.widgets.student_info": [[2, 2, 1, "", "StudentInfoForm"]], "pykubegrader.widgets.student_info.StudentInfoForm": [[2, 3, 1, "", "show"], [2, 3, 1, "", "submit"]], "pykubegrader.widgets.types_question": [[2, 1, 1, "", "MultipleChoice"], [2, 2, 1, "", "TypesQuestion"]], "pykubegrader.widgets_base": [[3, 0, 0, "-", "multi_select"], [3, 0, 0, "-", "reading"], [3, 0, 0, "-", "select"]], "pykubegrader.widgets_base.multi_select": [[3, 2, 1, "", "MultiSelectQuestion"]], "pykubegrader.widgets_base.multi_select.MultiSelectQuestion": [[3, 3, 1, "", "record_responses"], [3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]], "pykubegrader.widgets_base.reading": [[3, 2, 1, "", "ReadingPython"]], "pykubegrader.widgets_base.reading.ReadingPython": [[3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]], "pykubegrader.widgets_base.select": [[3, 2, 1, "", "SelectQuestion"]], "pykubegrader.widgets_base.select.SelectQuestion": [[3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "terms": {"": [6, 7], "0": [1, 2, 6, 7], "1": [2, 6, 7], "11": 2, "12": 2, "1729": 5, "2": [2, 6], "20": 2, "2024": 8, "25": 2, "2dai": 2, "3": [2, 6, 8], "4": [2, 9], "5": 2, "500kb": 6, "6": [2, 9], "7": [2, 6], "8": 2, "8000": [1, 6], "9": 2, "A": [2, 5, 8, 9], "AND": 8, "AS": 8, "BE": [6, 8], "BUT": 8, "BY": 8, "By": [6, 7], "FOR": 8, "For": [6, 9], "IF": 8, "IN": 8, "IT": 6, "If": [2, 6], "In": [2, 6], "It": [2, 7], "NO": 8, "NOT": 8, "OF": [6, 8], "ON": 8, "OR": [6, 8], "SUCH": 8, "THE": [6, 8], "TO": [6, 8], "The": [2, 6, 7], "_": [2, 3], "__init__": 2, "_build": 6, "abbrev": 6, "abl": 6, "about": 6, "abov": 8, "access": 2, "accident": 6, "accord": 6, "accordingli": 6, "account": 6, "activ": [6, 7], "ad": [5, 6, 7], "add": [2, 5, 6, 7, 9], "addit": [6, 7], "advis": 8, "after": 6, "all": [2, 6], "allow": 2, "alreadi": 6, "also": [2, 6, 7], "alwai": 2, "an": 2, "ani": [6, 8], "anoth": 2, "anyth": 6, "api": 6, "append": 2, "appli": [2, 6], "appreci": 6, "ar": [2, 6, 8], "architectur": 6, "aris": 8, "arrai": 2, "assign": [1, 2], "assignment_id": 1, "assum": 6, "assumpt": 6, "attribut": 2, "author": [6, 7], "autodoc": 7, "autom": 6, "automat": 6, "av": 6, "avail": 6, "avoid": 6, "b": 6, "base": [2, 3, 6], "base_url": 1, "been": [6, 9], "befor": 6, "behavior": 6, "behind": 6, "being": 6, "belong": 2, "below": 7, "best": 6, "big": 6, "bin": 6, "binari": [6, 8], "bitbucket": 6, "black": 6, "bool": [1, 2, 3], "boolean": 2, "bottom": 6, "branch": 6, "break": [2, 6], "breakpoint": 6, "browser": 6, "bsd": 8, "bug": [5, 6], "bugfix": 6, "build": 6, "built": [2, 6], "busi": 8, "button": 6, "c": 8, "callabl": 3, "can": [2, 6, 7], "captur": 1, "case": 6, "caus": [6, 8], "cd": 6, "cfg": 6, "chang": [2, 5], "changelog": 7, "charact": 2, "check": 6, "checkout": 6, "ci": 6, "class": [2, 3, 6], "classic": 7, "claus": 8, "clean": 6, "click": 6, "close": 6, "clutter": 6, "code": [2, 7, 8], "coher": 6, "collabor": 6, "collect": [2, 6], "column": [1, 3], "com": 6, "come": 6, "command": 6, "comment": 2, "comments_opt": 2, "commit": 6, "commonmark": 6, "commun": 6, "compani": 6, "compar": 2, "compat": 6, "compil": 6, "complet": 6, "concept": 6, "concern": 2, "conda": 6, "condit": [2, 8], "conduct": 6, "conf": 7, "configur": 6, "confus": 6, "consequenti": 8, "consid": 6, "consider": 6, "contain": 2, "content": [0, 6], "continu": [2, 6], "contract": 8, "contribut": 7, "contributor": [6, 7, 8], "control": 2, "copi": 6, "copyright": 8, "correct": 6, "correctli": 6, "cov": 6, "creat": [2, 7], "current": [2, 6], "current_valu": 2, "damag": 8, "data": [2, 8], "datatyp": 2, "decid": 6, "decim": 2, "decor": 6, "dedic": 6, "default": 7, "defin": 2, "definit": [2, 6], "depend": 6, "deriv": 8, "desc_widget": 1, "describ": 6, "descript": [2, 3, 6, 9], "design": 6, "detail": [6, 9], "develop": 6, "dict": [1, 3], "dictionari": 2, "differ": [2, 6], "direct": 8, "directori": 6, "dirti": 6, "disclaim": 8, "discuss": 6, "disk": 6, "dist": 6, "distribut": [6, 8], "do": 6, "doc": [6, 7], "docstr": [6, 7], "document": [7, 8], "domain": 7, "don": 6, "done": 6, "doubt": 6, "draft": 6, "drexel": 4, "drop": 6, "dropdown": 1, "e": [6, 7], "easi": 6, "easili": 6, "edit": 6, "editor": 6, "edu": 4, "effici": 2, "egg": 6, "either": 6, "element": 2, "els": 2, "encrypt_to_b64": [0, 1], "end": 2, "endors": 8, "ensure_respons": [0, 1], "equal": 2, "error": [2, 6], "especi": 6, "evalu": 2, "even": [6, 8], "event": 8, "eventu": 6, "everyth": 6, "exampl": 6, "excel": 6, "executioninfo": 1, "exemplari": 8, "expect": 6, "experi": 6, "explan": 6, "exponenti": 2, "express": 8, "extend": 7, "extens": [6, 7], "extra": 6, "face": 6, "factor": 6, "fall": 6, "fals": 2, "familiar": 6, "featur": [5, 6], "feedback": 6, "feel": 6, "fetch": 6, "few": 6, "file": [2, 6, 7], "filepath": 1, "find": 6, "fine": 6, "finish": 6, "fire": 6, "first": 6, "fit": 8, "fix": [5, 6], "flag": 6, "flake8": 6, "float": 2, "focu": 6, "focus": 6, "folder": 6, "follow": [2, 6, 8], "forget": 6, "fork": 6, "form": [6, 8], "format": 7, "foundat": 6, "free": 6, "free_response_quest": 1, "freecodecamp": 6, "freshli": 6, "from": [2, 6, 7, 8], "function": [2, 6], "g": [6, 7], "gener": 6, "gerrit": 6, "get": 6, "git": 6, "github": 6, "gitlab": 6, "global": 2, "go": 6, "goe": 9, "good": [6, 8], "googl": 7, "graph": 6, "group": 6, "guid": 6, "guidelin": 6, "ha": 9, "handi": 6, "hash": 6, "have": 6, "help": [6, 7], "here": [5, 9], "highli": 6, "histori": 6, "hold": 6, "holder": 8, "hook": 6, "host": 6, "howev": 8, "html": [1, 2, 3, 6], "http": [1, 6, 9], "i": [2, 6, 7, 8], "icon": 6, "idea": 6, "identifi": 6, "illustr": 6, "immut": 2, "impli": 8, "import": 6, "improv": 7, "incident": 8, "includ": [6, 7, 8], "index": [6, 7], "indirect": 8, "info": [1, 6], "info_typ": 1, "inform": [6, 9], "inherit": 2, "initi": [0, 2], "initial_v": 2, "initialize_assign": [0, 1], "insert": 2, "instal": 6, "instanc": 2, "instanti": 2, "instead": 6, "instruct": 6, "int": [1, 3], "integ": 2, "integr": 6, "interact": 6, "interest": 6, "interfac": 6, "intern": 6, "interpret": 2, "interrupt": 8, "intersphinx_map": 7, "isol": 6, "issu": 7, "item": [2, 6], "iter": 2, "its": [6, 8], "jagar2": 4, "jca92": 4, "just": 6, "k": 6, "kei": [1, 2, 3], "kept": 6, "keyword": 2, "kind": 6, "kwarg": 2, "label": 6, "languag": [2, 6], "learn": [7, 8], "least": 6, "less": 2, "let": 7, "liabil": 8, "liabl": 8, "licens": 7, "like": 6, "limit": 8, "line": 2, "lines_to_com": 2, "link": [6, 7], "list": [1, 2, 3, 6, 8], "list1": 2, "list2": 2, "list_of_list": [0, 1], "littl": 6, "local": 6, "localhost": [1, 6], "log": 6, "log_encrypt": [0, 1], "log_vari": [0, 1], "login": 1, "login_": [0, 1], "login_data": 1, "login_url": 1, "longer": 9, "look": 6, "loop": 2, "loss": 8, "lot": 6, "m": 6, "m3": 8, "machin": [6, 8], "made": 6, "mai": [6, 8], "main": [6, 7], "maintain": 7, "major": 6, "make": 6, "manipul": 2, "manual": 6, "mark": 6, "markup": 6, "match": 2, "materi": 8, "matplotlib": 7, "mc1": 2, "mc2": 2, "mc3": 2, "mc4": 2, "mcq": [1, 2], "mcquestion": [1, 2], "mean": 6, "mechan": 6, "mention": 6, "merchant": 8, "merg": 6, "messag": [1, 6], "met": 8, "method": [2, 6], "might": 6, "mind": 6, "miniconda": 6, "minim": 6, "misc": 0, "miss": 6, "mistak": 6, "mix": 2, "model": 6, "modif": 8, "modifi": 6, "modul": [0, 6, 7], "more": [6, 7], "moreov": 6, "motiv": 6, "ms1": 2, "ms2": 2, "ms3": 2, "ms4": 2, "ms5": 2, "multi_select": [0, 1], "multifunct": 8, "multipl": 2, "multiple_choic": [0, 1], "multiplechoic": [1, 2], "multiselect": [1, 2], "multiselectquest": [1, 2, 3], "must": [2, 8], "mutabl": 2, "my": 6, "myst": 6, "n": [2, 6], "n_requir": 2, "n_row": 2, "name": [1, 2, 6, 8], "nasti": 5, "navig": 6, "need": 6, "neglig": 8, "neither": 8, "never": 6, "new": 6, "next": 2, "non": 6, "none": [1, 2, 3], "nonetyp": 2, "nor": 8, "normal": 6, "note": 7, "notic": [6, 8], "num": 2, "number": 2, "numpi": 7, "object": [2, 3], "occur": 6, "often": 6, "old": 6, "onc": 6, "one": 6, "onelin": 6, "open": 6, "oper": [2, 6], "option": [1, 2, 3, 6], "order": [2, 6, 7], "org": [6, 9], "orient": 2, "origin": 6, "other": [6, 7, 8], "otherwis": 8, "out": [6, 8], "overview": 7, "packag": [0, 6, 7], "page": [6, 7], "pair": 2, "panda": 7, "paragraph": 6, "part": 6, "particular": 8, "pass": [2, 6], "password": 1, "path": 6, "pattern": 6, "pdb": 6, "pencil": 6, "perfectli": 6, "permiss": [6, 8], "permit": 8, "pip": 6, "pipx": 6, "pleas": 6, "plu": 2, "point": [2, 3], "possibl": [2, 7, 8], "post_url": 1, "potenti": 6, "pr": 6, "pre": [2, 6], "pretti": [6, 7], "preview": 6, "previous": 6, "principl": 6, "print": 2, "prior": 8, "privat": 6, "problem": 6, "process": 6, "procur": 8, "product": 8, "profit": 8, "program": [2, 6], "project": [6, 7, 9], "promot": [6, 8], "propos": 6, "proprietari": 6, "provid": [6, 8], "public": 6, "publicli": 6, "publish": 6, "pull": 6, "purpos": 8, "push": [2, 6], "py": 7, "pykubegrad": 6, "pypi": 6, "pyscaffold": [6, 9], "pytest": 6, "python": [2, 6, 7], "python3": 6, "question": 1, "question_max_scor": 1, "question_numb": [2, 3], "quick": 6, "quickli": 6, "quit": 6, "r": 6, "radiobuttongroup": 2, "re": 6, "read": [0, 1, 2], "readabl": 6, "readi": 6, "reading1": 2, "reading_quest": [0, 1], "readingpython": [1, 2, 3], "readingpythonquest": [1, 2], "real": 2, "reason": 6, "recommend": [6, 7], "record": 6, "record_respons": [1, 3], "recreat": 6, "recur": 6, "redistribut": 8, "refer": [6, 7], "reliabl": 6, "remov": 6, "repl": 6, "replac": 6, "report": 7, "repres": 2, "reproduc": [6, 8], "reproduct": 6, "request": 6, "requir": 6, "resourc": 6, "respect": 6, "respons": 1, "responses_flat": 3, "restructuredtext": [6, 7], "retain": 8, "return": [2, 6], "review": 6, "rf": 6, "rm": 6, "root": 6, "rst": [6, 7], "run": [2, 6], "same": [2, 6], "scikit": 7, "scipi": 7, "score": 1, "score_quest": [0, 1], "script": 6, "search": [6, 7], "section": 6, "see": [6, 9], "seed": 1, "select": [0, 1, 2], "select_mani": [0, 1], "selectmani": [1, 2], "selectquest": [1, 2, 3], "self": 2, "send": 6, "sequenc": 2, "server": 6, "servic": [6, 8], "session": 6, "set": [2, 9], "setup": 6, "setuptool": 6, "sever": 6, "shall": 8, "short": 9, "should": 6, "show": [1, 2, 3], "shuffle_opt": [0, 1], "shuffle_quest": [0, 1], "similar": 6, "simplifi": 6, "six": 6, "size": 6, "softwar": [6, 8], "solut": 6, "solv": 6, "sometim": 6, "sort": 6, "sourc": [1, 2, 3, 6, 8], "special": 8, "specif": [6, 8], "sphinx": [6, 7], "src": 6, "start": 6, "statement": 2, "step": [2, 6], "still": 6, "storag": 2, "store": 2, "str": [1, 2, 3], "strict": 8, "string": 2, "structur": 2, "student": 1, "student_email": 1, "student_info": [0, 1], "studentinfoform": [1, 2], "style": [2, 3, 6, 7], "subject": 6, "submiss": 1, "submission_messag": [0, 1], "submit": [1, 2, 3], "submit_question_new": [0, 1], "submodul": 0, "subpackag": 0, "substitut": 8, "success": 6, "summari": 6, "suppos": 6, "sure": 6, "syntax": [2, 7], "system": 6, "t": 6, "table_head": 2, "tag": 6, "task": 7, "telemetri": 0, "templat": 6, "term": [1, 6], "terminologi": 6, "test": 6, "text": 6, "than": 2, "thei": 6, "them": [6, 7], "theori": 8, "thi": [6, 7, 8, 9], "thing": 6, "though": 6, "through": 2, "tip": 6, "titl": [2, 3], "toctre": 7, "too": 6, "top": 6, "tort": 8, "total": 2, "tox": 6, "tracker": 6, "tricki": 6, "trivial": 6, "troubl": 6, "true": [2, 6], "try": 6, "tuesdai": 2, "tupl": [1, 2, 3], "txt": 6, "type": 2, "types1": 2, "types2": 2, "types3": 2, "types4": 2, "types5": 2, "types6": 2, "types_quest": [0, 1], "typesquest": [1, 2], "u": 6, "uncom": 6, "under": 6, "unicod": 2, "unit": 6, "unnecessari": 6, "until": 2, "unwant": 6, "up": [6, 9], "updat": 6, "update_respons": [0, 1], "upload": [1, 6], "upon": 6, "upstream": 6, "url": 6, "us": [2, 6, 7, 8, 9], "usag": 9, "user": 6, "usernam": 1, "v1": 6, "valid": [0, 2, 6], "validate_logfil": [0, 1], "valu": [1, 2], "variabl": 2, "variables_chang": 2, "venv": 6, "veri": 6, "version": [6, 7], "via": 6, "virtual": 6, "virtualenv": 6, "wa": [2, 6], "wai": [6, 8], "want": 6, "warranti": 8, "we": 6, "web": 6, "weird": 6, "welcom": 6, "well": 6, "what": 6, "when": [2, 6], "whether": 8, "which": [2, 6], "while": [2, 6], "widget": [0, 1], "widgets_bas": [0, 1], "without": 8, "work": 6, "workflow": 6, "would": 6, "write": 6, "written": [6, 7, 8], "you": [2, 6, 7], "your": [5, 7, 9], "yourlogin": 6, "yourself": 6}, "titles": ["pykubegrader", "pykubegrader package", "pykubegrader.widgets package", "pykubegrader.widgets_base package", "Contributors", "Changelog", "Contributing", "PyKubeGrader", "License", "PyKubeGrader"], "titleterms": {"0": 5, "1": 5, "an": 6, "chang": 6, "changelog": 5, "clone": 6, "code": 6, "content": [1, 2, 3, 7], "contribut": 6, "contributor": 4, "creat": 6, "document": 6, "environ": 6, "implement": 6, "improv": 6, "indic": 7, "initi": 1, "issu": 6, "licens": 8, "maintain": 6, "misc": 1, "modul": [1, 2, 3], "multi_select": 3, "multiple_choic": 2, "note": 9, "packag": [1, 2, 3], "pykubegrad": [0, 1, 2, 3, 7, 9], "read": 3, "reading_quest": 2, "releas": 6, "report": 6, "repositori": 6, "select": 3, "select_mani": 2, "student_info": 2, "submit": 6, "submodul": [1, 2, 3], "subpackag": 1, "tabl": 7, "task": 6, "telemetri": 1, "todo": 6, "troubleshoot": 6, "types_quest": 2, "valid": 1, "version": 5, "widget": 2, "widgets_bas": 3, "your": 6}}) \ No newline at end of file +Search.setIndex({"alltitles": {"Changelog": [[5, null]], "Clone the repository": [[6, "clone-the-repository"]], "Code Contributions": [[6, "code-contributions"]], "Contents": [[7, "contents"]], "Contributing": [[6, "contributing"]], "Contributors": [[4, null]], "Create an environment": [[6, "create-an-environment"]], "Documentation Improvements": [[6, "documentation-improvements"]], "Implement your changes": [[6, "implement-your-changes"]], "Indices and tables": [[7, "indices-and-tables"]], "Issue Reports": [[6, "issue-reports"]], "License": [[8, null]], "Maintainer tasks": [[6, "maintainer-tasks"]], "Module contents": [[1, "module-pykubegrader"], [2, "module-pykubegrader.widgets"], [3, "module-pykubegrader.widgets_base"]], "Note": [[9, "note"]], "PyKubeGrader": [[7, null], [9, null]], "Releases": [[6, "releases"]], "Submit an issue": [[6, "submit-an-issue"]], "Submit your contribution": [[6, "submit-your-contribution"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"]], "Subpackages": [[1, "subpackages"]], "Todo": [[6, null], [6, "id2"], [6, "id3"], [6, "id5"], [6, "id6"], [6, "id7"], [6, "id8"], [6, "id9"], [6, "id10"], [6, "id11"], [6, "id12"]], "Troubleshooting": [[6, "troubleshooting"]], "Version 0.1": [[5, "version-0-1"]], "pykubegrader": [[0, null]], "pykubegrader package": [[1, null]], "pykubegrader.initialize module": [[1, "module-pykubegrader.initialize"]], "pykubegrader.misc module": [[1, "module-pykubegrader.misc"]], "pykubegrader.telemetry module": [[1, "module-pykubegrader.telemetry"]], "pykubegrader.validate module": [[1, "module-pykubegrader.validate"]], "pykubegrader.widgets package": [[2, null]], "pykubegrader.widgets.multiple_choice module": [[2, "module-pykubegrader.widgets.multiple_choice"]], "pykubegrader.widgets.reading_question module": [[2, "module-pykubegrader.widgets.reading_question"]], "pykubegrader.widgets.select_many module": [[2, "module-pykubegrader.widgets.select_many"]], "pykubegrader.widgets.student_info module": [[2, "module-pykubegrader.widgets.student_info"]], "pykubegrader.widgets.types_question module": [[2, "module-pykubegrader.widgets.types_question"]], "pykubegrader.widgets_base package": [[3, null]], "pykubegrader.widgets_base.multi_select module": [[3, "module-pykubegrader.widgets_base.multi_select"]], "pykubegrader.widgets_base.reading module": [[3, "module-pykubegrader.widgets_base.reading"]], "pykubegrader.widgets_base.select module": [[3, "module-pykubegrader.widgets_base.select"]]}, "docnames": ["api/modules", "api/pykubegrader", "api/pykubegrader.widgets", "api/pykubegrader.widgets_base", "authors", "changelog", "contributing", "index", "license", "readme"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/modules.rst", "api/pykubegrader.rst", "api/pykubegrader.widgets.rst", "api/pykubegrader.widgets_base.rst", "authors.rst", "changelog.rst", "contributing.rst", "index.rst", "license.rst", "readme.rst"], "indexentries": {"encrypt_to_b64() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.encrypt_to_b64", false]], "ensure_responses() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.ensure_responses", false]], "initialize_assignment() (in module pykubegrader.initialize)": [[1, "pykubegrader.initialize.initialize_assignment", false]], "list_of_lists() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.list_of_lists", false]], "log_encrypted() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.log_encrypted", false]], "log_variable() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.log_variable", false]], "mcq() (in module pykubegrader.widgets.multiple_choice)": [[2, "pykubegrader.widgets.multiple_choice.MCQ", false]], "mcquestion (class in pykubegrader.widgets.multiple_choice)": [[2, "pykubegrader.widgets.multiple_choice.MCQuestion", false]], "module": [[1, "module-pykubegrader", false], [1, "module-pykubegrader.initialize", false], [1, "module-pykubegrader.misc", false], [1, "module-pykubegrader.telemetry", false], [1, "module-pykubegrader.validate", false], [2, "module-pykubegrader.widgets", false], [2, "module-pykubegrader.widgets.multiple_choice", false], [2, "module-pykubegrader.widgets.reading_question", false], [2, "module-pykubegrader.widgets.select_many", false], [2, "module-pykubegrader.widgets.student_info", false], [2, "module-pykubegrader.widgets.types_question", false], [3, "module-pykubegrader.widgets_base", false], [3, "module-pykubegrader.widgets_base.multi_select", false], [3, "module-pykubegrader.widgets_base.reading", false], [3, "module-pykubegrader.widgets_base.select", false]], "multiplechoice() (in module pykubegrader.widgets.types_question)": [[2, "pykubegrader.widgets.types_question.MultipleChoice", false]], "multiselect() (in module pykubegrader.widgets.select_many)": [[2, "pykubegrader.widgets.select_many.MultiSelect", false]], "multiselectquestion (class in pykubegrader.widgets_base.multi_select)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion", false]], "pykubegrader": [[1, "module-pykubegrader", false]], "pykubegrader.initialize": [[1, "module-pykubegrader.initialize", false]], "pykubegrader.misc": [[1, "module-pykubegrader.misc", false]], "pykubegrader.telemetry": [[1, "module-pykubegrader.telemetry", false]], "pykubegrader.validate": [[1, "module-pykubegrader.validate", false]], "pykubegrader.widgets": [[2, "module-pykubegrader.widgets", false]], "pykubegrader.widgets.multiple_choice": [[2, "module-pykubegrader.widgets.multiple_choice", false]], "pykubegrader.widgets.reading_question": [[2, "module-pykubegrader.widgets.reading_question", false]], "pykubegrader.widgets.select_many": [[2, "module-pykubegrader.widgets.select_many", false]], "pykubegrader.widgets.student_info": [[2, "module-pykubegrader.widgets.student_info", false]], "pykubegrader.widgets.types_question": [[2, "module-pykubegrader.widgets.types_question", false]], "pykubegrader.widgets_base": [[3, "module-pykubegrader.widgets_base", false]], "pykubegrader.widgets_base.multi_select": [[3, "module-pykubegrader.widgets_base.multi_select", false]], "pykubegrader.widgets_base.reading": [[3, "module-pykubegrader.widgets_base.reading", false]], "pykubegrader.widgets_base.select": [[3, "module-pykubegrader.widgets_base.select", false]], "readingpython (class in pykubegrader.widgets_base.reading)": [[3, "pykubegrader.widgets_base.reading.ReadingPython", false]], "readingpythonquestion (class in pykubegrader.widgets.reading_question)": [[2, "pykubegrader.widgets.reading_question.ReadingPythonQuestion", false]], "record_responses() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.record_responses", false]], "score_question() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.score_question", false]], "selectmany (class in pykubegrader.widgets.select_many)": [[2, "pykubegrader.widgets.select_many.SelectMany", false]], "selectquestion (class in pykubegrader.widgets_base.select)": [[3, "pykubegrader.widgets_base.select.SelectQuestion", false]], "show() (pykubegrader.widgets.student_info.studentinfoform method)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm.show", false]], "show() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.show", false]], "show() (pykubegrader.widgets_base.reading.readingpython method)": [[3, "pykubegrader.widgets_base.reading.ReadingPython.show", false]], "show() (pykubegrader.widgets_base.select.selectquestion method)": [[3, "pykubegrader.widgets_base.select.SelectQuestion.show", false]], "shuffle_options() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.shuffle_options", false]], "shuffle_questions() (in module pykubegrader.misc)": [[1, "pykubegrader.misc.shuffle_questions", false]], "studentinfoform (class in pykubegrader.widgets.student_info)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm", false]], "submission_message() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.submission_message", false]], "submit() (pykubegrader.widgets.student_info.studentinfoform method)": [[2, "pykubegrader.widgets.student_info.StudentInfoForm.submit", false]], "submit() (pykubegrader.widgets_base.multi_select.multiselectquestion method)": [[3, "pykubegrader.widgets_base.multi_select.MultiSelectQuestion.submit", false]], "submit() (pykubegrader.widgets_base.reading.readingpython method)": [[3, "pykubegrader.widgets_base.reading.ReadingPython.submit", false]], "submit() (pykubegrader.widgets_base.select.selectquestion method)": [[3, "pykubegrader.widgets_base.select.SelectQuestion.submit", false]], "submit_question_new() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.submit_question_new", false]], "telemetry() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.telemetry", false]], "typesquestion (class in pykubegrader.widgets.types_question)": [[2, "pykubegrader.widgets.types_question.TypesQuestion", false]], "update_responses() (in module pykubegrader.telemetry)": [[1, "pykubegrader.telemetry.update_responses", false]], "validate_logfile() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.validate_logfile", false]], "verify_login() (in module pykubegrader.validate)": [[1, "pykubegrader.validate.verify_login", false]]}, "objects": {"": [[1, 0, 0, "-", "pykubegrader"]], "pykubegrader": [[1, 0, 0, "-", "initialize"], [1, 0, 0, "-", "misc"], [1, 0, 0, "-", "telemetry"], [1, 0, 0, "-", "validate"], [2, 0, 0, "-", "widgets"], [3, 0, 0, "-", "widgets_base"]], "pykubegrader.initialize": [[1, 1, 1, "", "initialize_assignment"]], "pykubegrader.misc": [[1, 1, 1, "", "list_of_lists"], [1, 1, 1, "", "shuffle_options"], [1, 1, 1, "", "shuffle_questions"]], "pykubegrader.telemetry": [[1, 1, 1, "", "encrypt_to_b64"], [1, 1, 1, "", "ensure_responses"], [1, 1, 1, "", "log_encrypted"], [1, 1, 1, "", "log_variable"], [1, 1, 1, "", "score_question"], [1, 1, 1, "", "submit_question_new"], [1, 1, 1, "", "telemetry"], [1, 1, 1, "", "update_responses"]], "pykubegrader.validate": [[1, 1, 1, "", "submission_message"], [1, 1, 1, "", "validate_logfile"], [1, 1, 1, "", "verify_login"]], "pykubegrader.widgets": [[2, 0, 0, "-", "multiple_choice"], [2, 0, 0, "-", "reading_question"], [2, 0, 0, "-", "select_many"], [2, 0, 0, "-", "student_info"], [2, 0, 0, "-", "types_question"]], "pykubegrader.widgets.multiple_choice": [[2, 1, 1, "", "MCQ"], [2, 2, 1, "", "MCQuestion"]], "pykubegrader.widgets.reading_question": [[2, 2, 1, "", "ReadingPythonQuestion"]], "pykubegrader.widgets.select_many": [[2, 1, 1, "", "MultiSelect"], [2, 2, 1, "", "SelectMany"]], "pykubegrader.widgets.student_info": [[2, 2, 1, "", "StudentInfoForm"]], "pykubegrader.widgets.student_info.StudentInfoForm": [[2, 3, 1, "", "show"], [2, 3, 1, "", "submit"]], "pykubegrader.widgets.types_question": [[2, 1, 1, "", "MultipleChoice"], [2, 2, 1, "", "TypesQuestion"]], "pykubegrader.widgets_base": [[3, 0, 0, "-", "multi_select"], [3, 0, 0, "-", "reading"], [3, 0, 0, "-", "select"]], "pykubegrader.widgets_base.multi_select": [[3, 2, 1, "", "MultiSelectQuestion"]], "pykubegrader.widgets_base.multi_select.MultiSelectQuestion": [[3, 3, 1, "", "record_responses"], [3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]], "pykubegrader.widgets_base.reading": [[3, 2, 1, "", "ReadingPython"]], "pykubegrader.widgets_base.reading.ReadingPython": [[3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]], "pykubegrader.widgets_base.select": [[3, 2, 1, "", "SelectQuestion"]], "pykubegrader.widgets_base.select.SelectQuestion": [[3, 3, 1, "", "show"], [3, 3, 1, "", "submit"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "terms": {"": [6, 7], "0": [1, 2, 6, 7], "1": [2, 6, 7], "11": 2, "12": 2, "1729": 5, "2": [2, 6], "20": 2, "2024": 8, "25": 2, "2dai": 2, "3": [2, 6, 8], "4": [2, 9], "5": 2, "500kb": 6, "6": [2, 9], "7": [2, 6], "8": 2, "8000": [1, 6], "9": 2, "A": [2, 5, 8, 9], "AND": 8, "AS": 8, "BE": [6, 8], "BUT": 8, "BY": 8, "By": [6, 7], "FOR": 8, "For": [6, 9], "IF": 8, "IN": 8, "IT": 6, "If": [2, 6], "In": [2, 6], "It": [2, 7], "NO": 8, "NOT": 8, "OF": [6, 8], "ON": 8, "OR": [6, 8], "SUCH": 8, "THE": [6, 8], "TO": [6, 8], "The": [2, 6, 7], "_": [2, 3], "__init__": 2, "_build": 6, "abbrev": 6, "abl": 6, "about": 6, "abov": 8, "access": 2, "accident": 6, "accord": 6, "accordingli": 6, "account": 6, "activ": [6, 7], "ad": [5, 6, 7], "add": [2, 5, 6, 7, 9], "addit": [6, 7], "advis": 8, "after": 6, "all": [2, 6], "allow": 2, "alreadi": 6, "also": [2, 6, 7], "alwai": 2, "an": 2, "ani": [6, 8], "anoth": 2, "anyth": 6, "api": 6, "append": 2, "appli": [2, 6], "appreci": 6, "ar": [2, 6, 8], "architectur": 6, "aris": 8, "arrai": 2, "assign": [1, 2], "assignment_id": 1, "assum": 6, "assumpt": 6, "attribut": 2, "author": [6, 7], "autodoc": 7, "autom": 6, "automat": 6, "av": 6, "avail": 6, "avoid": 6, "b": 6, "base": [2, 3, 6], "base_url": 1, "been": [6, 9], "befor": 6, "behavior": 6, "behind": 6, "being": 6, "belong": 2, "below": 7, "best": 6, "big": 6, "bin": 6, "binari": [6, 8], "bitbucket": 6, "black": 6, "bool": [1, 2, 3], "boolean": 2, "bottom": 6, "branch": 6, "break": [2, 6], "breakpoint": 6, "browser": 6, "bsd": 8, "bug": [5, 6], "bugfix": 6, "build": 6, "built": [2, 6], "busi": 8, "button": 6, "c": 8, "callabl": 3, "can": [2, 6, 7], "captur": 1, "case": 6, "caus": [6, 8], "cd": 6, "cfg": 6, "chang": [2, 5], "changelog": 7, "charact": 2, "check": 6, "checkout": 6, "ci": 6, "class": [2, 3, 6], "classic": 7, "claus": 8, "clean": 6, "click": 6, "close": 6, "clutter": 6, "code": [2, 7, 8], "coher": 6, "collabor": 6, "collect": [2, 6], "column": [1, 3], "com": 6, "come": 6, "command": 6, "comment": 2, "comments_opt": 2, "commit": 6, "commonmark": 6, "commun": 6, "compani": 6, "compar": 2, "compat": 6, "compil": 6, "complet": 6, "concept": 6, "concern": 2, "conda": 6, "condit": [2, 8], "conduct": 6, "conf": 7, "configur": 6, "confus": 6, "consequenti": 8, "consid": 6, "consider": 6, "contain": 2, "content": [0, 6], "continu": [2, 6], "contract": 8, "contribut": 7, "contributor": [6, 7, 8], "control": 2, "copi": 6, "copyright": 8, "correct": 6, "correctli": 6, "cov": 6, "creat": [2, 7], "current": [2, 6], "current_valu": 2, "damag": 8, "data": [2, 8], "datatyp": 2, "decid": 6, "decim": 2, "decor": 6, "dedic": 6, "default": 7, "defin": 2, "definit": [2, 6], "depend": 6, "deriv": 8, "desc_widget": 1, "describ": 6, "descript": [2, 3, 6, 9], "design": 6, "detail": [6, 9], "develop": 6, "dict": [1, 3], "dictionari": 2, "differ": [2, 6], "direct": 8, "directori": 6, "dirti": 6, "disclaim": 8, "discuss": 6, "disk": 6, "dist": 6, "distribut": [6, 8], "do": 6, "doc": [6, 7], "docstr": [6, 7], "document": [7, 8], "domain": 7, "don": 6, "done": 6, "doubt": 6, "draft": 6, "drexel": 4, "drop": 6, "dropdown": 1, "e": [6, 7], "easi": 6, "easili": 6, "edit": 6, "editor": 6, "edu": 4, "effici": 2, "egg": 6, "either": 6, "element": 2, "els": 2, "encrypt_to_b64": [0, 1], "end": 2, "endors": 8, "ensure_respons": [0, 1], "equal": 2, "error": [2, 6], "especi": 6, "evalu": 2, "even": [6, 8], "event": 8, "eventu": 6, "everyth": 6, "exampl": 6, "excel": 6, "executioninfo": 1, "exemplari": 8, "expect": 6, "experi": 6, "explan": 6, "exponenti": 2, "express": 8, "extend": 7, "extens": [6, 7], "extra": 6, "face": 6, "factor": 6, "fall": 6, "fals": 2, "familiar": 6, "featur": [5, 6], "feedback": 6, "feel": 6, "fetch": 6, "few": 6, "file": [2, 6, 7], "filepath": 1, "find": 6, "fine": 6, "finish": 6, "fire": 6, "first": 6, "fit": 8, "fix": [5, 6], "flag": 6, "flake8": 6, "float": 2, "focu": 6, "focus": 6, "folder": 6, "follow": [2, 6, 8], "forget": 6, "fork": 6, "form": [6, 8], "format": 7, "foundat": 6, "free": 6, "free_response_quest": 1, "freecodecamp": 6, "freshli": 6, "from": [2, 6, 7, 8], "function": [2, 6], "g": [6, 7], "gener": 6, "gerrit": 6, "get": 6, "git": 6, "github": 6, "gitlab": 6, "global": 2, "go": 6, "goe": 9, "good": [6, 8], "googl": 7, "graph": 6, "group": 6, "guid": 6, "guidelin": 6, "ha": 9, "handi": 6, "hash": 6, "have": 6, "help": [6, 7], "here": [5, 9], "highli": 6, "histori": 6, "hold": 6, "holder": 8, "hook": 6, "host": 6, "howev": 8, "html": [1, 2, 3, 6], "http": [1, 6, 9], "i": [2, 6, 7, 8], "icon": 6, "idea": 6, "identifi": 6, "illustr": 6, "immut": 2, "impli": 8, "import": 6, "improv": 7, "incident": 8, "includ": [6, 7, 8], "index": [6, 7], "indirect": 8, "info": [1, 6], "info_typ": 1, "inform": [6, 9], "inherit": 2, "initi": [0, 2], "initial_v": 2, "initialize_assign": [0, 1], "insert": 2, "instal": 6, "instanc": 2, "instanti": 2, "instead": 6, "instruct": 6, "int": [1, 3], "integ": 2, "integr": 6, "interact": 6, "interest": 6, "interfac": 6, "intern": 6, "interpret": 2, "interrupt": 8, "intersphinx_map": 7, "isol": 6, "issu": 7, "item": [2, 6], "iter": 2, "its": [6, 8], "jagar2": 4, "jca92": 4, "just": 6, "k": 6, "kei": [1, 2, 3], "kept": 6, "keyword": 2, "kind": 6, "kwarg": 2, "label": 6, "languag": [2, 6], "learn": [7, 8], "least": 6, "less": 2, "let": 7, "liabil": 8, "liabl": 8, "licens": 7, "like": 6, "limit": 8, "line": 2, "lines_to_com": 2, "link": [6, 7], "list": [1, 2, 3, 6, 8], "list1": 2, "list2": 2, "list_of_list": [0, 1], "littl": 6, "local": 6, "localhost": [1, 6], "log": 6, "log_encrypt": [0, 1], "log_vari": [0, 1], "login": 1, "login_data": 1, "login_url": 1, "longer": 9, "look": 6, "loop": 2, "loss": 8, "lot": 6, "m": 6, "m3": 8, "machin": [6, 8], "made": 6, "mai": [6, 8], "main": [6, 7], "maintain": 7, "major": 6, "make": 6, "manipul": 2, "manual": 6, "mark": 6, "markup": 6, "match": 2, "materi": 8, "matplotlib": 7, "mc1": 2, "mc2": 2, "mc3": 2, "mc4": 2, "mcq": [1, 2], "mcquestion": [1, 2], "mean": 6, "mechan": 6, "mention": 6, "merchant": 8, "merg": 6, "messag": [1, 6], "met": 8, "method": [2, 6], "might": 6, "mind": 6, "miniconda": 6, "minim": 6, "misc": 0, "miss": 6, "mistak": 6, "mix": 2, "model": 6, "modif": 8, "modifi": 6, "modul": [0, 6, 7], "more": [6, 7], "moreov": 6, "motiv": 6, "ms1": 2, "ms2": 2, "ms3": 2, "ms4": 2, "ms5": 2, "multi_select": [0, 1], "multifunct": 8, "multipl": 2, "multiple_choic": [0, 1], "multiplechoic": [1, 2], "multiselect": [1, 2], "multiselectquest": [1, 2, 3], "must": [2, 8], "mutabl": 2, "my": 6, "myst": 6, "n": [2, 6], "n_requir": 2, "n_row": 2, "name": [1, 2, 6, 8], "nasti": 5, "navig": 6, "need": 6, "neglig": 8, "neither": 8, "never": 6, "new": 6, "next": 2, "non": 6, "none": [1, 2, 3], "nonetyp": 2, "nor": 8, "normal": 6, "note": 7, "notic": [6, 8], "num": 2, "number": 2, "numpi": 7, "object": [2, 3], "occur": 6, "often": 6, "old": 6, "onc": 6, "one": 6, "onelin": 6, "open": 6, "oper": [2, 6], "option": [1, 2, 3, 6], "order": [2, 6, 7], "org": [6, 9], "orient": 2, "origin": 6, "other": [6, 7, 8], "otherwis": 8, "out": [6, 8], "overview": 7, "packag": [0, 6, 7], "page": [6, 7], "pair": 2, "panda": 7, "paragraph": 6, "part": 6, "particular": 8, "pass": [2, 6], "password": 1, "path": 6, "pattern": 6, "pdb": 6, "pencil": 6, "perfectli": 6, "permiss": [6, 8], "permit": 8, "pip": 6, "pipx": 6, "pleas": 6, "plu": 2, "point": [2, 3], "possibl": [2, 7, 8], "post_url": 1, "potenti": 6, "pr": 6, "pre": [2, 6], "pretti": [6, 7], "preview": 6, "previous": 6, "principl": 6, "print": 2, "prior": 8, "privat": 6, "problem": 6, "process": 6, "procur": 8, "product": 8, "profit": 8, "program": [2, 6], "project": [6, 7, 9], "promot": [6, 8], "propos": 6, "proprietari": 6, "provid": [6, 8], "public": 6, "publicli": 6, "publish": 6, "pull": 6, "purpos": 8, "push": [2, 6], "py": 7, "pykubegrad": 6, "pypi": 6, "pyscaffold": [6, 9], "pytest": 6, "python": [2, 6, 7], "python3": 6, "question": 1, "question_max_scor": 1, "question_numb": [2, 3], "quick": 6, "quickli": 6, "quit": 6, "r": 6, "radiobuttongroup": 2, "re": 6, "read": [0, 1, 2], "readabl": 6, "readi": 6, "reading1": 2, "reading_quest": [0, 1], "readingpython": [1, 2, 3], "readingpythonquest": [1, 2], "real": 2, "reason": 6, "recommend": [6, 7], "record": 6, "record_respons": [1, 3], "recreat": 6, "recur": 6, "redistribut": 8, "refer": [6, 7], "reliabl": 6, "remov": 6, "repl": 6, "replac": 6, "report": 7, "repres": 2, "reproduc": [6, 8], "reproduct": 6, "request": 6, "requir": 6, "resourc": 6, "respect": 6, "respons": 1, "responses_flat": 3, "restructuredtext": [6, 7], "retain": 8, "return": [2, 6], "review": 6, "rf": 6, "rm": 6, "root": 6, "rst": [6, 7], "run": [2, 6], "same": [2, 6], "scikit": 7, "scipi": 7, "score": 1, "score_quest": [0, 1], "script": 6, "search": [6, 7], "section": 6, "see": [6, 9], "seed": 1, "select": [0, 1, 2], "select_mani": [0, 1], "selectmani": [1, 2], "selectquest": [1, 2, 3], "self": 2, "send": 6, "sequenc": 2, "server": 6, "servic": [6, 8], "session": 6, "set": [2, 9], "setup": 6, "setuptool": 6, "sever": 6, "shall": 8, "short": 9, "should": 6, "show": [1, 2, 3], "shuffle_opt": [0, 1], "shuffle_quest": [0, 1], "similar": 6, "simplifi": 6, "six": 6, "size": 6, "softwar": [6, 8], "solut": 6, "solv": 6, "sometim": 6, "sort": 6, "sourc": [1, 2, 3, 6, 8], "special": 8, "specif": [6, 8], "sphinx": [6, 7], "src": 6, "start": 6, "statement": 2, "step": [2, 6], "still": 6, "storag": 2, "store": 2, "str": [1, 2, 3], "strict": 8, "string": 2, "structur": 2, "student": 1, "student_email": 1, "student_info": [0, 1], "studentinfoform": [1, 2], "style": [2, 3, 6, 7], "subject": 6, "submiss": 1, "submission_messag": [0, 1], "submit": [1, 2, 3], "submit_question_new": [0, 1], "submodul": 0, "subpackag": 0, "substitut": 8, "success": 6, "summari": 6, "suppos": 6, "sure": 6, "syntax": [2, 7], "system": 6, "t": 6, "table_head": 2, "tag": 6, "task": 7, "telemetri": 0, "templat": 6, "term": [1, 6], "terminologi": 6, "test": 6, "text": 6, "than": 2, "thei": 6, "them": [6, 7], "theori": 8, "thi": [6, 7, 8, 9], "thing": 6, "though": 6, "through": 2, "tip": 6, "titl": [2, 3], "toctre": 7, "too": 6, "top": 6, "tort": 8, "total": 2, "tox": 6, "tracker": 6, "tricki": 6, "trivial": 6, "troubl": 6, "true": [2, 6], "try": 6, "tuesdai": 2, "tupl": [1, 2, 3], "txt": 6, "type": 2, "types1": 2, "types2": 2, "types3": 2, "types4": 2, "types5": 2, "types6": 2, "types_quest": [0, 1], "typesquest": [1, 2], "u": 6, "uncom": 6, "under": 6, "unicod": 2, "unit": 6, "unnecessari": 6, "until": 2, "unwant": 6, "up": [6, 9], "updat": 6, "update_respons": [0, 1], "upload": [1, 6], "upon": 6, "upstream": 6, "url": 6, "us": [2, 6, 7, 8, 9], "usag": 9, "user": 6, "usernam": 1, "v1": 6, "valid": [0, 2, 6], "validate_logfil": [0, 1], "valu": [1, 2], "variabl": 2, "variables_chang": 2, "venv": 6, "veri": 6, "verify_login": [0, 1], "version": [6, 7], "via": 6, "virtual": 6, "virtualenv": 6, "wa": [2, 6], "wai": [6, 8], "want": 6, "warranti": 8, "we": 6, "web": 6, "weird": 6, "welcom": 6, "well": 6, "what": 6, "when": [2, 6], "whether": 8, "which": [2, 6], "while": [2, 6], "widget": [0, 1], "widgets_bas": [0, 1], "without": 8, "work": 6, "workflow": 6, "would": 6, "write": 6, "written": [6, 7, 8], "you": [2, 6, 7], "your": [5, 7, 9], "yourlogin": 6, "yourself": 6}, "titles": ["pykubegrader", "pykubegrader package", "pykubegrader.widgets package", "pykubegrader.widgets_base package", "Contributors", "Changelog", "Contributing", "PyKubeGrader", "License", "PyKubeGrader"], "titleterms": {"0": 5, "1": 5, "an": 6, "chang": 6, "changelog": 5, "clone": 6, "code": 6, "content": [1, 2, 3, 7], "contribut": 6, "contributor": 4, "creat": 6, "document": 6, "environ": 6, "implement": 6, "improv": 6, "indic": 7, "initi": 1, "issu": 6, "licens": 8, "maintain": 6, "misc": 1, "modul": [1, 2, 3], "multi_select": 3, "multiple_choic": 2, "note": 9, "packag": [1, 2, 3], "pykubegrad": [0, 1, 2, 3, 7, 9], "read": 3, "reading_quest": 2, "releas": 6, "report": 6, "repositori": 6, "select": 3, "select_mani": 2, "student_info": 2, "submit": 6, "submodul": [1, 2, 3], "subpackag": 1, "tabl": 7, "task": 6, "telemetri": 1, "todo": 6, "troubleshoot": 6, "types_quest": 2, "valid": 1, "version": 5, "widget": 2, "widgets_bas": 3, "your": 6}}) \ No newline at end of file