otree 6.0.0b33__tar.gz → 6.0.2__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 (261) hide show
  1. {otree-6.0.0b33/otree.egg-info → otree-6.0.2}/PKG-INFO +1 -1
  2. {otree-6.0.0b33 → otree-6.0.2}/otree/__init__.py +1 -1
  3. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/zip.py +7 -11
  4. {otree-6.0.0b33 → otree-6.0.2}/otree/export.py +8 -4
  5. {otree-6.0.0b33 → otree-6.0.2}/otree/models/participant.py +1 -1
  6. {otree-6.0.0b33 → otree-6.0.2}/otree/views/admin.py +0 -2
  7. {otree-6.0.0b33 → otree-6.0.2/otree.egg-info}/PKG-INFO +1 -1
  8. {otree-6.0.0b33 → otree-6.0.2}/LICENSE +0 -0
  9. {otree-6.0.0b33 → otree-6.0.2}/MANIFEST.in +0 -0
  10. {otree-6.0.0b33 → otree-6.0.2}/README.rst +0 -0
  11. {otree-6.0.0b33 → otree-6.0.2}/otree/api.py +0 -0
  12. {otree-6.0.0b33 → otree-6.0.2}/otree/api.pyi +0 -0
  13. {otree-6.0.0b33 → otree-6.0.2}/otree/asgi.py +0 -0
  14. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__init__.py +0 -0
  15. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__pycache__/__init__.cpython-310.pyc +0 -0
  16. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__pycache__/__init__.cpython-311.pyc +0 -0
  17. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/MyPage.html +0 -0
  18. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/Results.html +0 -0
  19. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__init__.py +0 -0
  20. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-310.pyc +0 -0
  21. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-311.pyc +0 -0
  22. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/Results.html +0 -0
  23. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/Task.html +0 -0
  24. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__init__.py +0 -0
  25. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-310.pyc +0 -0
  26. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-311.pyc +0 -0
  27. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/trials.csv +0 -0
  28. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/trials.js +0 -0
  29. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/.gitignore +0 -0
  30. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/Procfile +0 -0
  31. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__init__.py +0 -0
  32. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-310.pyc +0 -0
  33. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-311.pyc +0 -0
  34. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-310.pyc +0 -0
  35. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-311.pyc +0 -0
  36. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/_static/global/empty.css +0 -0
  37. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/requirements.txt +0 -0
  38. {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/settings.py +0 -0
  39. {otree-6.0.0b33 → otree-6.0.2}/otree/auth.py +0 -0
  40. {otree-6.0.0b33 → otree-6.0.2}/otree/bots/__init__.py +0 -0
  41. {otree-6.0.0b33 → otree-6.0.2}/otree/bots/bot.py +0 -0
  42. {otree-6.0.0b33 → otree-6.0.2}/otree/bots/browser.py +0 -0
  43. {otree-6.0.0b33 → otree-6.0.2}/otree/bots/browser_launcher.py +0 -0
  44. {otree-6.0.0b33 → otree-6.0.2}/otree/bots/runner.py +0 -0
  45. {otree-6.0.0b33 → otree-6.0.2}/otree/channels/__init__.py +0 -0
  46. {otree-6.0.0b33 → otree-6.0.2}/otree/channels/consumers.py +0 -0
  47. {otree-6.0.0b33 → otree-6.0.2}/otree/channels/routing.py +0 -0
  48. {otree-6.0.0b33 → otree-6.0.2}/otree/channels/utils.py +0 -0
  49. {otree-6.0.0b33 → otree-6.0.2}/otree/chat.py +0 -0
  50. {otree-6.0.0b33 → otree-6.0.2}/otree/checks.py +0 -0
  51. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/__init__.py +0 -0
  52. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/base.py +0 -0
  53. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/bots.py +0 -0
  54. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/browser_bots.py +0 -0
  55. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/create_session.py +0 -0
  56. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/devserver.py +0 -0
  57. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/devserver_inner.py +0 -0
  58. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver.py +0 -0
  59. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver1of2.py +0 -0
  60. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver2of2.py +0 -0
  61. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/resetdb.py +0 -0
  62. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startapp.py +0 -0
  63. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startapp_trials.py +0 -0
  64. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startproject.py +0 -0
  65. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/timeoutsubprocess.py +0 -0
  66. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/unzip.py +0 -0
  67. {otree-6.0.0b33 → otree-6.0.2}/otree/cli/zipserver.py +0 -0
  68. {otree-6.0.0b33 → otree-6.0.2}/otree/common.py +0 -0
  69. {otree-6.0.0b33 → otree-6.0.2}/otree/common2.py +0 -0
  70. {otree-6.0.0b33 → otree-6.0.2}/otree/constants.py +0 -0
  71. {otree-6.0.0b33 → otree-6.0.2}/otree/currency.py +0 -0
  72. {otree-6.0.0b33 → otree-6.0.2}/otree/database.py +0 -0
  73. {otree-6.0.0b33 → otree-6.0.2}/otree/decimal.py +0 -0
  74. {otree-6.0.0b33 → otree-6.0.2}/otree/errorpage.py +0 -0
  75. {otree-6.0.0b33 → otree-6.0.2}/otree/forms/__init__.py +0 -0
  76. {otree-6.0.0b33 → otree-6.0.2}/otree/forms/fields.py +0 -0
  77. {otree-6.0.0b33 → otree-6.0.2}/otree/forms/forms.py +0 -0
  78. {otree-6.0.0b33 → otree-6.0.2}/otree/forms/multistring.py +0 -0
  79. {otree-6.0.0b33 → otree-6.0.2}/otree/forms/widgets.py +0 -0
  80. {otree-6.0.0b33 → otree-6.0.2}/otree/i18n.py +0 -0
  81. {otree-6.0.0b33 → otree-6.0.2}/otree/live.py +0 -0
  82. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ar/LC_MESSAGES/django.mo +0 -0
  83. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ar/LC_MESSAGES/django.po +0 -0
  84. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/babel.ini +0 -0
  85. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/cs/LC_MESSAGES/django.mo +0 -0
  86. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/cs/LC_MESSAGES/django.po +0 -0
  87. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/de/LC_MESSAGES/django.mo +0 -0
  88. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/de/LC_MESSAGES/django.po +0 -0
  89. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/django.pot +0 -0
  90. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/es/LC_MESSAGES/django.mo +0 -0
  91. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/es/LC_MESSAGES/django.po +0 -0
  92. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fi/LC_MESSAGES/django.mo +0 -0
  93. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fi/LC_MESSAGES/django.po +0 -0
  94. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fr/LC_MESSAGES/django.mo +0 -0
  95. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fr/LC_MESSAGES/django.po +0 -0
  96. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/he/LC_MESSAGES/django.mo +0 -0
  97. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/he/LC_MESSAGES/django.po +0 -0
  98. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hi/LC_MESSAGES/django.mo +0 -0
  99. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hi/LC_MESSAGES/django.po +0 -0
  100. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hu/LC_MESSAGES/django.mo +0 -0
  101. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hu/LC_MESSAGES/django.po +0 -0
  102. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/id/LC_MESSAGES/django.mo +0 -0
  103. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/id/LC_MESSAGES/django.po +0 -0
  104. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/it/LC_MESSAGES/django.mo +0 -0
  105. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/it/LC_MESSAGES/django.po +0 -0
  106. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ja/LC_MESSAGES/django.mo +0 -0
  107. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ja/LC_MESSAGES/django.po +0 -0
  108. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ko/LC_MESSAGES/django.mo +0 -0
  109. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ko/LC_MESSAGES/django.po +0 -0
  110. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nb/LC_MESSAGES/django.mo +0 -0
  111. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nb/LC_MESSAGES/django.po +0 -0
  112. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nl/LC_MESSAGES/django.mo +0 -0
  113. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nl/LC_MESSAGES/django.po +0 -0
  114. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pl/LC_MESSAGES/django.mo +0 -0
  115. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pl/LC_MESSAGES/django.po +0 -0
  116. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pt/LC_MESSAGES/django.mo +0 -0
  117. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pt/LC_MESSAGES/django.po +0 -0
  118. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ru/LC_MESSAGES/django.mo +0 -0
  119. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ru/LC_MESSAGES/django.po +0 -0
  120. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/tr/LC_MESSAGES/django.mo +0 -0
  121. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/tr/LC_MESSAGES/django.po +0 -0
  122. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
  123. {otree-6.0.0b33 → otree-6.0.2}/otree/locale/zh_Hans/LC_MESSAGES/django.po +0 -0
  124. {otree-6.0.0b33 → otree-6.0.2}/otree/lookup.py +0 -0
  125. {otree-6.0.0b33 → otree-6.0.2}/otree/main.py +0 -0
  126. {otree-6.0.0b33 → otree-6.0.2}/otree/middleware.py +0 -0
  127. {otree-6.0.0b33 → otree-6.0.2}/otree/models/__init__.py +0 -0
  128. {otree-6.0.0b33 → otree-6.0.2}/otree/models/group.py +0 -0
  129. {otree-6.0.0b33 → otree-6.0.2}/otree/models/player.py +0 -0
  130. {otree-6.0.0b33 → otree-6.0.2}/otree/models/session.py +0 -0
  131. {otree-6.0.0b33 → otree-6.0.2}/otree/models/subsession.py +0 -0
  132. {otree-6.0.0b33 → otree-6.0.2}/otree/models_concrete.py +0 -0
  133. {otree-6.0.0b33 → otree-6.0.2}/otree/mturk_client.py +0 -0
  134. {otree-6.0.0b33 → otree-6.0.2}/otree/patch.py +0 -0
  135. {otree-6.0.0b33 → otree-6.0.2}/otree/read_csv.py +0 -0
  136. {otree-6.0.0b33 → otree-6.0.2}/otree/room.py +0 -0
  137. {otree-6.0.0b33 → otree-6.0.2}/otree/session.py +0 -0
  138. {otree-6.0.0b33 → otree-6.0.2}/otree/settings.py +0 -0
  139. {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/css/bootstrap.min.css +0 -0
  140. {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/css/bootstrap.min.css.map +0 -0
  141. {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/js/bootstrap.bundle.min.js +0 -0
  142. {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/js/bootstrap.bundle.min.js.map +0 -0
  143. {otree-6.0.0b33 → otree-6.0.2}/otree/static/favicon.ico +0 -0
  144. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/clock.png +0 -0
  145. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/cloud.png +0 -0
  146. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/cogwheel.png +0 -0
  147. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/delete.png +0 -0
  148. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/download-alt.png +0 -0
  149. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/eye-open.png +0 -0
  150. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/folder-closed.png +0 -0
  151. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/link.png +0 -0
  152. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/list-alt.png +0 -0
  153. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/pencil.png +0 -0
  154. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/plus.png +0 -0
  155. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/pushpin.png +0 -0
  156. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/refresh.png +0 -0
  157. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/stats.png +0 -0
  158. {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/usd.png +0 -0
  159. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/css/table.css +0 -0
  160. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/css/theme2.css +0 -0
  161. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/back_button.js +0 -0
  162. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/common_admin.js +0 -0
  163. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/common_user_facing.js +0 -0
  164. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/formInputs.js +0 -0
  165. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/internet-explorer.js +0 -0
  166. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery-3.2.1.min.js +0 -0
  167. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.color-2.1.2.min.js +0 -0
  168. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.countdown.min.js +0 -0
  169. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.timeago.en-short.js +0 -0
  170. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.timeago.js +0 -0
  171. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/live.js +0 -0
  172. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/page-websocket-redirect.js +0 -0
  173. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/preserve_unsubmitted_inputs.js +0 -0
  174. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/reconnecting-websocket-iife.min.js +0 -0
  175. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/session_data.js +0 -0
  176. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/session_monitor.js +0 -0
  177. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-core.js +0 -0
  178. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-core.js.backup +0 -0
  179. {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-pre.js +0 -0
  180. {otree-6.0.0b33 → otree-6.0.2}/otree/static/robots.txt +0 -0
  181. {otree-6.0.0b33 → otree-6.0.2}/otree/tasks.py +0 -0
  182. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/global/Base.html +0 -0
  183. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/global/Page.html +0 -0
  184. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/AdminReport.html +0 -0
  185. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/BaseAdminAll.html +0 -0
  186. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/BaseAdminRegular.html +0 -0
  187. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Base_UserFacing.html +0 -0
  188. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/CreateDemoSession.html +0 -0
  189. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/CreateSession.html +0 -0
  190. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/DemoIndex.html +0 -0
  191. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/ExportIndex.html +0 -0
  192. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/FormPage.html +0 -0
  193. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/GBATInactive.html +0 -0
  194. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Login.html +0 -0
  195. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkCreateHIT.html +0 -0
  196. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkHTMLQuestion.html +0 -0
  197. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkSessionPayments.html +0 -0
  198. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/OutOfRangeNotification.html +0 -0
  199. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Page.html +0 -0
  200. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWelcomePage.html +0 -0
  201. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWithSession.html +0 -0
  202. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWithoutSession.html +0 -0
  203. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Rooms.html +0 -0
  204. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/ServerCheck.html +0 -0
  205. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Session.html +0 -0
  206. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionData.html +0 -0
  207. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionDemoGridView.html +0 -0
  208. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionDescription.html +0 -0
  209. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionEditProperties.html +0 -0
  210. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionMonitor.html +0 -0
  211. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionPayments.html +0 -0
  212. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionSplitScreen.html +0 -0
  213. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionStartLinks.html +0 -0
  214. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Sessions.html +0 -0
  215. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/WaitPage.html +0 -0
  216. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/WaitPageGeneric.html +0 -0
  217. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/CreateSessionForm.html +0 -0
  218. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/RoomParticipantLinks.html +0 -0
  219. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/SessionInfo.html +0 -0
  220. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/TimeLimit.html +0 -0
  221. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/TimeLimit.js.html +0 -0
  222. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/debug_info.html +0 -0
  223. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/hidden_form_errors.html +0 -0
  224. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/messages.html +0 -0
  225. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/mturk_payment_table.html +0 -0
  226. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/navbar.html +0 -0
  227. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/participant_code_links_table.html +0 -0
  228. {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/tags/chat.html +0 -0
  229. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/__init__.py +0 -0
  230. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/compiler.py +0 -0
  231. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/context.py +0 -0
  232. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/errors.py +0 -0
  233. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/filters.py +0 -0
  234. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/loader.py +0 -0
  235. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/nodes.py +0 -0
  236. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/template.py +0 -0
  237. {otree-6.0.0b33 → otree-6.0.2}/otree/templating/utils.py +0 -0
  238. {otree-6.0.0b33 → otree-6.0.2}/otree/test.py +0 -0
  239. {otree-6.0.0b33 → otree-6.0.2}/otree/trials.py +0 -0
  240. {otree-6.0.0b33 → otree-6.0.2}/otree/update.py +0 -0
  241. {otree-6.0.0b33 → otree-6.0.2}/otree/urls.py +0 -0
  242. {otree-6.0.0b33 → otree-6.0.2}/otree/views/__init__.py +0 -0
  243. {otree-6.0.0b33 → otree-6.0.2}/otree/views/abstract.py +0 -0
  244. {otree-6.0.0b33 → otree-6.0.2}/otree/views/cbv.py +0 -0
  245. {otree-6.0.0b33 → otree-6.0.2}/otree/views/demo.py +0 -0
  246. {otree-6.0.0b33 → otree-6.0.2}/otree/views/export.py +0 -0
  247. {otree-6.0.0b33 → otree-6.0.2}/otree/views/mturk.py +0 -0
  248. {otree-6.0.0b33 → otree-6.0.2}/otree/views/participant.py +0 -0
  249. {otree-6.0.0b33 → otree-6.0.2}/otree/views/querystring.py +0 -0
  250. {otree-6.0.0b33 → otree-6.0.2}/otree/views/rest.py +0 -0
  251. {otree-6.0.0b33 → otree-6.0.2}/otree/views/room.py +0 -0
  252. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/SOURCES.txt +0 -0
  253. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/dependency_links.txt +0 -0
  254. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/entry_points.txt +0 -0
  255. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/not-zip-safe +0 -0
  256. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/requires.txt +0 -0
  257. {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/top_level.txt +0 -0
  258. {otree-6.0.0b33 → otree-6.0.2}/pyproject.toml +0 -0
  259. {otree-6.0.0b33 → otree-6.0.2}/requirements.txt +0 -0
  260. {otree-6.0.0b33 → otree-6.0.2}/setup.cfg +0 -0
  261. {otree-6.0.0b33 → otree-6.0.2}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: otree
3
- Version: 6.0.0b33
3
+ Version: 6.0.2
4
4
  Summary: Framework for multiplayer strategy games and complex surveys.
5
5
  Home-page: http://otree.org/
6
6
  Author: chris@otree.org
@@ -1,2 +1,2 @@
1
- __version__ = '6.0.0b33'
1
+ __version__ = '6.0.2'
2
2
  # don't import anything else here because setup.py imports this.
@@ -95,11 +95,7 @@ def zip_project(project_path: Path):
95
95
  logger.error(str(exc))
96
96
  sys.exit(1)
97
97
 
98
- # once Heroku upgrades their default python version, we can remove this runtime stuff.
99
- # we should just overwrite the existing runtime. because maybe it has something old.
100
- # (e.g. if it was downloaded from otree hub)
101
98
  overwrite_runtime_txt = not os.getenv('OTREE_NO_RUNTIME_TXT')
102
- print_function('overwrite_runtime_txt', overwrite_runtime_txt)
103
99
  if overwrite_runtime_txt:
104
100
  runtime_txt = project_path / '.python-version'
105
101
  runtime_txt.write_text('3.12')
@@ -115,9 +111,12 @@ def zip_project(project_path: Path):
115
111
 
116
112
  def fix_reqs_files(project_path: Path) -> dict:
117
113
  rpath = project_path.joinpath('requirements.txt')
118
- rbpath = project_path.joinpath('requirements_base.txt')
114
+
115
+ # If requirements.txt doesn't exist, create it with defaults
116
+ if not rpath.exists():
117
+ return {rpath.name: REQS_DEFAULT}
118
+
119
119
  original_rtxt = rpath.read_text('utf8')
120
- original_rbtxt = rbpath.read_text('utf8') if rbpath.exists() else ''
121
120
 
122
121
  can_overwrite = False
123
122
  if OVERWRITE_TOKEN in original_rtxt:
@@ -125,7 +124,7 @@ def fix_reqs_files(project_path: Path) -> dict:
125
124
  elif DONT_OVERWRITE_TOKEN not in original_rtxt:
126
125
  ans = input(
127
126
  "Do you want oTree to automatically keep your requirements files up to date?\n"
128
- "(Enter 'n' if you have custom requirements in requirements.txt or requirements_base.txt)\n"
127
+ "(Enter 'n' if you have custom requirements in requirements.txt)\n"
129
128
  "(y/n): "
130
129
  ).lower()
131
130
  if ans == 'y':
@@ -137,10 +136,7 @@ def fix_reqs_files(project_path: Path) -> dict:
137
136
  can_overwrite = False
138
137
 
139
138
  if can_overwrite:
140
- d = {rpath.name: REQS_DEFAULT}
141
- if rbpath.exists():
142
- d[rbpath.name] = REQS_BASE_DEFAULT
143
- return d
139
+ return {rpath.name: REQS_DEFAULT}
144
140
  else:
145
141
  return {}
146
142
 
@@ -46,7 +46,8 @@ DATA_TAB_FIXED_COLUMNS = [
46
46
 
47
47
  # Automatically derive the group column index
48
48
  GROUP_COL_INDEX = next(
49
- i for i, col in enumerate(DATA_TAB_FIXED_COLUMNS)
49
+ i
50
+ for i, col in enumerate(DATA_TAB_FIXED_COLUMNS)
50
51
  if col['field'] == 'group.id_in_subsession'
51
52
  )
52
53
 
@@ -109,8 +110,8 @@ def _get_table_fields(Model, custom_fields=None, for_export=False):
109
110
 
110
111
  specs = [
111
112
  ('player', BasePlayer, ['id_in_group', 'role', 'payoff']),
112
- # group.id_in_subsession is handled separately (pushed to beginning of row)
113
- ('group', BaseGroup, ['id_in_subsession']),
113
+ # group.id_in_subsession is in DATA_TAB_FIXED_COLUMNS, not here
114
+ ('group', BaseGroup, []),
114
115
  # don't need round_number because it's already in the SessionData navigation toolbar
115
116
  ('subsession', BaseSubsession, []),
116
117
  ]
@@ -527,7 +528,10 @@ def get_rows_for_data_tab_app(session, app_name):
527
528
  s = subsessions[p['subsession_id']]
528
529
  try:
529
530
  row = (
530
- [col['getter'](p, g, s, participant_label) for col in DATA_TAB_FIXED_COLUMNS]
531
+ [
532
+ col['getter'](p, g, s, participant_label)
533
+ for col in DATA_TAB_FIXED_COLUMNS
534
+ ]
531
535
  + [p[fname] for fname in pfields]
532
536
  + [g[fname] for fname in gfields]
533
537
  + [s[fname] for fname in sfields]
@@ -31,7 +31,7 @@ class Participant(MixinVars, otree.database.SSPPGModel):
31
31
  payoff = Column(CurrencyType, default=0)
32
32
 
33
33
  # status could be 'finished', 'dropped out', etc. Empty string means active/in progress
34
- status = Column(st.String(50), default='')
34
+ status = Column(st.String(50), default='', nullable=False)
35
35
 
36
36
  # better to use a string so that it doesn't become unofficial API
37
37
  time_started_utc = Column(st.String(50), nullable=True)
@@ -322,8 +322,6 @@ class SessionData(AdminSessionPage):
322
322
  session=session
323
323
  ).count()
324
324
  pfields, gfields, sfields = export.get_fields_for_data_tab(app_name)
325
- # Remove id_in_subsession from gfields since we handle it separately
326
- gfields = [f for f in gfields if f != 'id_in_subsession']
327
325
 
328
326
  for round_number in range(1, num_rounds + 1):
329
327
  # Build headers with indexes for sortability
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: otree
3
- Version: 6.0.0b33
3
+ Version: 6.0.2
4
4
  Summary: Framework for multiplayer strategy games and complex surveys.
5
5
  Home-page: http://otree.org/
6
6
  Author: chris@otree.org
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes