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.
- {otree-6.0.0b33/otree.egg-info → otree-6.0.2}/PKG-INFO +1 -1
- {otree-6.0.0b33 → otree-6.0.2}/otree/__init__.py +1 -1
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/zip.py +7 -11
- {otree-6.0.0b33 → otree-6.0.2}/otree/export.py +8 -4
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/participant.py +1 -1
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/admin.py +0 -2
- {otree-6.0.0b33 → otree-6.0.2/otree.egg-info}/PKG-INFO +1 -1
- {otree-6.0.0b33 → otree-6.0.2}/LICENSE +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/MANIFEST.in +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/README.rst +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/api.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/api.pyi +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/asgi.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__pycache__/__init__.cpython-310.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/__pycache__/__init__.cpython-311.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/MyPage.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/Results.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-310.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-311.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/Results.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/Task.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-310.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-311.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/trials.csv +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/trials.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/.gitignore +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/Procfile +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-310.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-311.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-310.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-311.pyc +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/_static/global/empty.css +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/requirements.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/settings.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/auth.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/bots/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/bots/bot.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/bots/browser.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/bots/browser_launcher.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/bots/runner.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/channels/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/channels/consumers.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/channels/routing.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/channels/utils.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/chat.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/checks.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/base.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/bots.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/browser_bots.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/create_session.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/devserver.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/devserver_inner.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver1of2.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/prodserver2of2.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/resetdb.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startapp.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startapp_trials.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/startproject.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/timeoutsubprocess.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/unzip.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/cli/zipserver.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/common.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/common2.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/constants.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/currency.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/database.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/decimal.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/errorpage.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/forms/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/forms/fields.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/forms/forms.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/forms/multistring.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/forms/widgets.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/i18n.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/live.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ar/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ar/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/babel.ini +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/cs/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/cs/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/de/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/de/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/django.pot +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/es/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/es/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fi/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fi/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fr/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/fr/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/he/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/he/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hi/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hi/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hu/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/hu/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/id/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/id/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/it/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/it/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ja/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ja/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ko/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ko/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nb/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nb/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nl/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/nl/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pl/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pl/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pt/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/pt/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ru/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/ru/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/tr/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/tr/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/locale/zh_Hans/LC_MESSAGES/django.po +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/lookup.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/main.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/middleware.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/group.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/player.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/session.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models/subsession.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/models_concrete.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/mturk_client.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/patch.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/read_csv.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/room.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/session.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/settings.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/css/bootstrap.min.css +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/css/bootstrap.min.css.map +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/js/bootstrap.bundle.min.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/bootstrap5/js/bootstrap.bundle.min.js.map +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/favicon.ico +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/clock.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/cloud.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/cogwheel.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/delete.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/download-alt.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/eye-open.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/folder-closed.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/link.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/list-alt.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/pencil.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/plus.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/pushpin.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/refresh.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/stats.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/glyphicons/usd.png +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/css/table.css +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/css/theme2.css +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/back_button.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/common_admin.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/common_user_facing.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/formInputs.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/internet-explorer.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery-3.2.1.min.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.color-2.1.2.min.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.countdown.min.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.timeago.en-short.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/jquery.timeago.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/live.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/page-websocket-redirect.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/preserve_unsubmitted_inputs.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/reconnecting-websocket-iife.min.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/session_data.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/session_monitor.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-core.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-core.js.backup +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/otree/js/trials-pre.js +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/static/robots.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/tasks.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/global/Base.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/global/Page.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/AdminReport.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/BaseAdminAll.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/BaseAdminRegular.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Base_UserFacing.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/CreateDemoSession.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/CreateSession.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/DemoIndex.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/ExportIndex.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/FormPage.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/GBATInactive.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Login.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkCreateHIT.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkHTMLQuestion.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/MTurkSessionPayments.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/OutOfRangeNotification.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Page.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWelcomePage.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWithSession.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/RoomWithoutSession.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Rooms.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/ServerCheck.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Session.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionData.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionDemoGridView.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionDescription.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionEditProperties.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionMonitor.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionPayments.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionSplitScreen.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/SessionStartLinks.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/Sessions.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/WaitPage.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/WaitPageGeneric.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/CreateSessionForm.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/RoomParticipantLinks.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/SessionInfo.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/TimeLimit.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/TimeLimit.js.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/debug_info.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/hidden_form_errors.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/messages.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/mturk_payment_table.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/navbar.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/participant_code_links_table.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/tags/chat.html +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/compiler.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/context.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/errors.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/filters.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/loader.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/nodes.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/template.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/templating/utils.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/test.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/trials.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/update.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/urls.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/__init__.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/abstract.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/cbv.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/demo.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/export.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/mturk.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/participant.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/querystring.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/rest.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree/views/room.py +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/SOURCES.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/dependency_links.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/entry_points.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/not-zip-safe +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/requires.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/otree.egg-info/top_level.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/pyproject.toml +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/requirements.txt +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/setup.cfg +0 -0
- {otree-6.0.0b33 → otree-6.0.2}/setup.py +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
__version__ = '6.0.
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
113
|
-
('group', BaseGroup, [
|
|
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
|
-
[
|
|
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
|
|
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
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-310.pyc
RENAMED
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template/__pycache__/__init__.cpython-311.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-310.pyc
RENAMED
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/app_template_trials/__pycache__/__init__.cpython-311.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-310.pyc
RENAMED
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/__init__.cpython-311.pyc
RENAMED
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-310.pyc
RENAMED
|
File without changes
|
{otree-6.0.0b33 → otree-6.0.2}/otree/assets/project_template/__pycache__/settings.cpython-311.pyc
RENAMED
|
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
|
|
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
|
|
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
|
{otree-6.0.0b33 → otree-6.0.2}/otree/templates/otree/includes/participant_code_links_table.html
RENAMED
|
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
|