From 330f3d9b1da9659e1f49c1d97e253ce949c1cd18 Mon Sep 17 00:00:00 2001 From: Mawoka Date: Fri, 30 Jun 2023 13:16:12 +0200 Subject: [PATCH] :sparkles: Made repo REUSE compliant --- .deepsource.toml | 3 ++ .dockerignore | 3 ++ .flake8 | 3 ++ .github/FUNDING.yml | 3 ++ .github/ISSUE_TEMPLATE/Feature_request.md | 5 ++++ .../Repo_architecture_changes.md | 5 ++++ .github/ISSUE_TEMPLATE/bug_report.yml | 3 ++ .github/PULL_REQUEST_TEMPLATE.md | 6 ++++ .github/codecov.yml | 3 ++ .github/workflows/backend_lint.yml | 4 +++ .github/workflows/build_backend.yml | 4 +++ .github/workflows/build_frontend.yml | 4 +++ .github/workflows/frontend_lint.yml | 4 +++ .github/workflows/pytest.yml | 4 +++ .gitignore | 4 +++ .pre-commit-config.yaml | 4 +++ .tokeignore | 4 +++ CONTACT.md | 5 ++++ CONTRIBUTING.md | 5 ++++ Caddyfile | 4 +++ Caddyfile-docker | 4 +++ Dockerfile | 4 +++ Pipfile | 4 +++ Pipfile.lock.license | 3 ++ README.md | 6 ++++ SocketIo.md | 6 ++++ alembic.ini | 4 +++ classquiz/__init__.py | 6 ++-- classquiz/auth.py | 7 +++-- classquiz/cache.py | 6 ++-- classquiz/config.py | 7 +++-- classquiz/db/__init__.py | 7 +++-- classquiz/db/models.py | 8 +++-- classquiz/db/quiztivity.py | 8 +++-- classquiz/emails/__init__.py | 7 +++-- classquiz/emails/templates/footer.jinja2 | 5 ++++ .../templates/forgotten_password.jinja2 | 5 ++++ classquiz/emails/templates/register.jinja2 | 6 ++++ classquiz/helpers/__init__.py | 7 +++-- classquiz/helpers/avatar.py | 6 ++-- classquiz/helpers/box_controller.py | 8 +++-- classquiz/helpers/hashcash.py | 9 ++++-- classquiz/helpers/pixabay.py | 10 +++---- classquiz/kahoot_importer/README.md | 6 ++++ classquiz/kahoot_importer/__init__.py | 7 +++-- classquiz/kahoot_importer/get.py | 7 +++-- classquiz/kahoot_importer/import_quiz.py | 7 +++-- classquiz/kahoot_importer/search.py | 7 +++-- classquiz/oauth/__init__.py | 8 +++-- classquiz/oauth/authenticate_user.py | 7 +++-- classquiz/oauth/custom.py | 8 +++-- classquiz/oauth/github.py | 8 +++-- classquiz/oauth/google.py | 8 +++-- classquiz/oauth/init_oauth.py | 7 +++-- classquiz/routers/__init__.py | 6 ++-- classquiz/routers/admin.py | 8 +++-- classquiz/routers/avatar.py | 8 +++-- classquiz/routers/box_controller/__init__.py | 7 +++-- .../box_controller/embedded/__init__.py | 10 +++---- .../routers/box_controller/embedded/socket.py | 8 +++-- .../routers/box_controller/embedded_ws.md | 6 ++++ classquiz/routers/box_controller/web.py | 8 +++-- classquiz/routers/community.py | 7 +++-- classquiz/routers/cqa-file-format.md | 6 ++++ classquiz/routers/editor.py | 7 +++-- classquiz/routers/eximport.py | 8 +++-- classquiz/routers/live.py | 6 ++-- classquiz/routers/login.py | 8 +++-- classquiz/routers/pixabay.py | 8 +++-- classquiz/routers/quiz.py | 7 +++-- classquiz/routers/quiztivity/__init__.py | 7 +++-- classquiz/routers/quiztivity/shares.py | 8 +++-- classquiz/routers/remote.py | 8 +++-- classquiz/routers/results.py | 8 +++-- classquiz/routers/search.py | 7 +++-- classquiz/routers/sitemap.py | 8 +++-- classquiz/routers/stats.py | 7 +++-- classquiz/routers/storage.py | 8 +++-- classquiz/routers/testing_routes.py | 7 +++-- classquiz/routers/users/__init__.py | 7 +++-- classquiz/routers/users/twofa.py | 8 +++-- classquiz/routers/users/webauthn.py | 4 +++ classquiz/routers/utils.py | 7 +++-- classquiz/socket_server/__init__.py | 8 +++-- classquiz/socket_server/export_helpers.py | 8 +++-- classquiz/storage/__init__.py | 7 +++-- classquiz/storage/errors.py | 6 ++-- classquiz/storage/local_storage.py | 7 +++-- classquiz/storage/s3_storage.py | 10 +++---- classquiz/tests/__init__.py | 7 +++-- classquiz/tests/test_auth.py | 7 +++-- classquiz/tests/test_kahoot_get.py | 7 +++-- classquiz/tests/test_kahoot_import.py | 7 +++-- classquiz/tests/test_kahoot_search.py | 7 +++-- classquiz/tests/test_server.py | 7 +++-- classquiz/tests/test_storage.py | 8 +++-- classquiz/worker/__init__.py | 8 +++-- classquiz/worker/storage.py | 8 +++-- docker-compose.yml | 4 +++ frontend/.eslintrc.cjs | 8 ++--- frontend/.gitignore | 4 +++ frontend/.npmrc | 4 +++ frontend/.prettierrc.license | 3 ++ frontend/Dockerfile | 4 +++ frontend/README.md | 6 ++++ frontend/i18next-scanner.config.engine.cjs | 8 ++--- frontend/package.json.license | 3 ++ frontend/pnpm-lock.yaml.license | 3 ++ frontend/postcss.config.cjs | 8 ++--- frontend/src/app.css | 9 +++--- frontend/src/app.d.ts | 9 +++--- frontend/src/app.html | 8 ++--- frontend/src/hooks.server.ts | 8 ++--- frontend/src/lib/Map.svelte | 9 +++--- frontend/src/lib/Spinner.svelte | 9 +++--- frontend/src/lib/admin.svelte | 9 +++--- frontend/src/lib/admin.ts | 8 ++--- frontend/src/lib/assets/landing/.gitignore | 4 +++ .../landing/admin_overview.webp.license | 3 ++ frontend/src/lib/clickOutside.js | 8 ++--- frontend/src/lib/collapsible.svelte | 9 +++--- .../src/lib/components/buttons/brown.svelte | 9 +++--- .../src/lib/components/buttons/gray.svelte | 6 ++++ .../src/lib/components/commandpalette.svelte | 8 ++--- .../src/lib/components/controller/code.svelte | 6 ++++ .../lib/components/popover/smalltop.svelte | 9 +++--- .../src/lib/components/popover/smalltop.ts | 8 ++--- frontend/src/lib/config.ts | 8 ++--- frontend/src/lib/dashboard/main_slider.svelte | 9 +++--- frontend/src/lib/dashboard/start_game.svelte | 7 +++-- .../lib/dashboard/start_game_background.svg | 5 ++++ .../src/lib/dashboard/useViewportAction.js | 9 +++--- frontend/src/lib/editor.svelte | 9 +++--- frontend/src/lib/editor/ABCDEditorPart.svelte | 9 +++--- .../src/lib/editor/AddNewQuestionPopup.svelte | 8 ++--- frontend/src/lib/editor/MediaComponent.svelte | 8 ++--- .../src/lib/editor/OrderEditorPart.svelte | 9 +++--- .../lib/editor/RangeSelectorEditorPart.svelte | 6 ++++ frontend/src/lib/editor/TextEditorPart.svelte | 9 +++--- .../src/lib/editor/VotingEditorPart.svelte | 9 +++--- frontend/src/lib/editor/card.svelte | 9 +++--- frontend/src/lib/editor/checker-bg.svg | 6 ++++ frontend/src/lib/editor/settings-card.svelte | 9 +++--- frontend/src/lib/editor/sidebar.svelte | 9 +++--- frontend/src/lib/editor/slide.svelte | 9 +++--- .../src/lib/editor/slides/edit_menu.svelte | 9 +++--- .../editor/slides/element_selection.svelte | 9 +++--- .../src/lib/editor/slides/icons/x-circle.svg | 8 ++--- .../lib/editor/slides/settings_menu.svelte | 9 +++--- .../src/lib/editor/slides/types/circle.svelte | 9 +++--- .../lib/editor/slides/types/headline.svelte | 9 +++--- .../lib/editor/slides/types/rectangle.svelte | 9 +++--- .../src/lib/editor/slides/types/text.svelte | 9 +++--- frontend/src/lib/editor/uploader.svelte | 9 +++--- .../src/lib/editor/uploader/Library.svelte | 8 ++--- .../src/lib/editor/uploader/Pixabay.svelte | 8 ++--- frontend/src/lib/files/dashboard.svelte | 8 ++--- frontend/src/lib/footer.svelte | 9 +++--- frontend/src/lib/hashcash.ts | 8 ++--- frontend/src/lib/helpers.ts | 8 ++--- frontend/src/lib/hljs.css | 8 ++--- frontend/src/lib/i18n/i18n-service.ts | 8 ++--- frontend/src/lib/i18n/index.ts | 8 ++--- frontend/src/lib/i18n/translation-service.ts | 8 ++--- frontend/src/lib/i18n/translations.ts | 8 ++--- frontend/src/lib/inline-editor.svelte | 9 +++--- .../src/lib/inline-editor_new_trash.svelte | 9 +++--- frontend/src/lib/landing/landing-promo.svelte | 9 +++--- frontend/src/lib/landing/newsletter.svelte | 9 +++--- frontend/src/lib/landing/testimonials.svelte | 9 +++--- frontend/src/lib/language-toggle.svelte | 12 ++++---- frontend/src/lib/modals/alert.svelte | 12 ++++---- frontend/src/lib/navbar.svelte | 9 +++--- .../src/lib/play/admin/final_results.svelte | 9 +++--- .../lib/play/admin/game_not_started.svelte | 7 +++-- frontend/src/lib/play/admin/results.svelte | 9 +++--- frontend/src/lib/play/admin/slide.svelte | 9 +++--- .../src/lib/play/admin/voting_results.svelte | 9 +++--- frontend/src/lib/play/audio_player.svelte | 9 +++--- .../src/lib/play/circular_progress.svelte | 9 +++--- frontend/src/lib/play/end.svelte | 9 +++--- frontend/src/lib/play/join.svelte | 9 +++--- .../src/lib/play/kahoot_mode_assets/0.svg | 5 ++++ .../src/lib/play/kahoot_mode_assets/1.svg | 5 ++++ .../src/lib/play/kahoot_mode_assets/2.svg | 8 +++-- .../src/lib/play/kahoot_mode_assets/3.svg | 8 +++-- .../play/kahoot_mode_assets/kahoot_icons.ts | 8 ++--- frontend/src/lib/play/question.svelte | 9 +++--- frontend/src/lib/play/questions/check.svelte | 8 ++--- frontend/src/lib/play/results_kahoot.svelte | 9 +++--- frontend/src/lib/play/show_results.svelte | 9 +++--- frontend/src/lib/play/title.svelte | 9 +++--- frontend/src/lib/practice/question.svelte | 9 +++--- frontend/src/lib/practice/title_screen.svelte | 9 +++--- frontend/src/lib/quiz_image_uncover.svelte | 5 ++++ frontend/src/lib/quiz_types.ts | 8 ++--- .../src/lib/quiztivity/add_new_slide.svelte | 9 +++--- .../quiztivity/components/abcd/edit.svelte | 8 ++--- .../quiztivity/components/abcd/play.svelte | 8 ++--- .../components/markdown/edit.svelte | 9 +++--- .../components/markdown/play.svelte | 9 +++--- .../quiztivity/components/memory/edit.svelte | 9 +++--- .../quiztivity/components/memory/play.svelte | 9 +++--- .../lib/quiztivity/components/pdf/edit.svelte | 8 ++--- frontend/src/lib/quiztivity/editor.svelte | 9 +++--- .../src/lib/quiztivity/shares_popover.svelte | 9 +++--- frontend/src/lib/quiztivity/types.ts | 8 ++--- frontend/src/lib/search-card.svelte | 9 +++--- frontend/src/lib/socket.ts | 8 ++--- frontend/src/lib/stores.ts | 8 ++--- frontend/src/lib/tinykeys.ts | 30 +++---------------- .../src/lib/view_quiz/imported_or_not.svelte | 9 +++--- frontend/src/lib/yupSchemas.ts | 8 ++--- frontend/src/routes/+error.svelte | 15 ++++------ frontend/src/routes/+layout.server.ts | 4 +++ frontend/src/routes/+layout.svelte | 9 +++--- frontend/src/routes/+layout.ts | 4 +++ frontend/src/routes/+page.server.ts | 8 ++--- frontend/src/routes/+page.svelte | 9 +++--- frontend/src/routes/account/+layout.svelte | 9 +++--- .../routes/account/controllers/+page.svelte | 9 +++--- .../src/routes/account/controllers/+page.ts | 8 ++--- .../controllers/[controller_id]/+page.svelte | 9 +++--- .../controllers/[controller_id]/+page.ts | 9 +++--- .../[controller_id]/SaveIndicator.svelte | 8 ++--- .../controllers/[controller_id]/commons.ts | 8 ++--- .../account/controllers/add/+page.svelte | 6 ++++ .../routes/account/controllers/add/+page.ts | 8 ++--- .../controllers/add/wait/+page.server.ts | 4 +++ .../account/controllers/add/wait/+page.svelte | 6 ++++ .../src/routes/account/login/+page.server.ts | 4 +++ .../src/routes/account/login/+page.svelte | 9 +++--- .../account/login/backup_component.svelte | 9 +++--- .../routes/account/login/oauth_block.svelte | 9 +++--- .../account/login/password_component.svelte | 9 +++--- .../routes/account/login/select_method.svelte | 8 ++--- .../routes/account/login/start_window.svelte | 9 +++--- .../account/login/totp_component.svelte | 9 +++--- .../account/login/verified_badge.svelte | 8 ++--- .../account/login/webauthn_component.svelte | 9 +++--- .../routes/account/oauth-error/+page.svelte | 9 +++--- .../src/routes/account/oauth-error/+page.ts | 4 +++ .../account/password-reset/+page.server.ts | 4 +++ .../account/password-reset/+page.svelte | 9 +++--- .../routes/account/register/+page.server.ts | 4 +++ .../src/routes/account/register/+page.svelte | 9 +++--- .../account/reset-password/+page.server.ts | 4 +++ .../account/reset-password/+page.svelte | 9 +++--- .../routes/account/settings/+page.server.ts | 4 +++ .../src/routes/account/settings/+page.svelte | 9 +++--- .../account/settings/avatar/+page.svelte | 9 +++--- .../account/settings/security/+page.svelte | 9 +++--- .../settings/security/backup_codes.svelte | 9 +++--- .../settings/security/totp_setup.svelte | 9 +++--- frontend/src/routes/admin/+page.server.ts | 4 +++ frontend/src/routes/admin/+page.svelte | 9 +++--- frontend/src/routes/controller/+page.svelte | 8 ++--- frontend/src/routes/create/+page.server.ts | 4 +++ frontend/src/routes/create/+page.svelte | 9 +++--- frontend/src/routes/dashboard/+page.server.ts | 4 +++ frontend/src/routes/dashboard/+page.svelte | 9 +++--- frontend/src/routes/dashboard/+page.ts | 8 ++--- .../src/routes/dashboard/files/+page.svelte | 8 ++--- frontend/src/routes/dashboard/files/+page.ts | 9 +++--- .../src/routes/docs/(markdown)/+layout.svelte | 9 +++--- .../routes/docs/(markdown)/features/+page.svx | 6 ++++ .../features/custom-field/+page.svx | 7 +++-- .../features/remote-control/+page.svx | 7 +++-- .../(markdown)/quiz/question-types/+page.svx | 6 ++++ .../question-types/check-choice/+page.svx | 6 ++++ .../question-types/multiple-choice/+page.svx | 6 ++++ .../quiz/question-types/order/+page.svx | 6 ++++ .../quiz/question-types/range/+page.svx | 6 ++++ .../quiz/question-types/text/+page.svx | 6 ++++ .../quiz/question-types/voting/+page.svx | 6 ++++ frontend/src/routes/docs/+layout.svelte | 9 +++--- frontend/src/routes/docs/+page.js | 4 +++ frontend/src/routes/docs/+page.svelte | 12 ++------ frontend/src/routes/docs/attribution/+page.js | 4 +++ .../src/routes/docs/attribution/+page.svelte | 9 +++--- frontend/src/routes/docs/develop/+page.js | 4 +++ frontend/src/routes/docs/develop/+page.svelte | 9 +++--- .../routes/docs/import-from-kahoot/+page.js | 4 +++ .../docs/import-from-kahoot/+page.svelte | 9 +++--- frontend/src/routes/docs/pow/+page.js | 4 +++ frontend/src/routes/docs/pow/+page.svelte | 9 +++--- .../src/routes/docs/privacy-policy/+page.js | 4 +++ .../routes/docs/privacy-policy/+page.svelte | 9 +++--- frontend/src/routes/docs/roadmap/+page.js | 4 +++ frontend/src/routes/docs/roadmap/+page.svelte | 9 +++--- frontend/src/routes/docs/self-host/+page.js | 4 +++ .../src/routes/docs/self-host/+page.svelte | 8 ++--- frontend/src/routes/docs/tos/+page.js | 4 +++ frontend/src/routes/docs/tos/+page.svelte | 11 +++---- frontend/src/routes/edit/+page.server.ts | 4 +++ frontend/src/routes/edit/+page.svelte | 9 +++--- frontend/src/routes/edit/files/+page.svelte | 8 ++--- frontend/src/routes/edit/files/+page.ts | 9 +++--- .../src/routes/edit/files/uploader.svelte | 7 +++-- .../src/routes/edit/videos/+page.server.ts | 8 ++--- frontend/src/routes/edit/videos/+page.svelte | 13 +++----- frontend/src/routes/explore/+page.svelte | 9 +++--- frontend/src/routes/explore/+page.ts | 9 +++--- frontend/src/routes/import/+page.server.ts | 4 +++ frontend/src/routes/import/+page.svelte | 9 +++--- frontend/src/routes/overview/+server.ts | 8 ++--- frontend/src/routes/play/+page.server.ts | 4 +++ frontend/src/routes/play/+page.svelte | 12 ++++---- frontend/src/routes/practice/+page.svelte | 8 ++--- .../src/routes/quiztivity/create/+page.svelte | 9 +++--- .../src/routes/quiztivity/edit/+page.svelte | 9 +++--- frontend/src/routes/quiztivity/edit/+page.ts | 8 ++--- .../src/routes/quiztivity/play/+error.svelte | 21 ++++--------- .../src/routes/quiztivity/play/+page.svelte | 9 +++--- frontend/src/routes/quiztivity/play/+page.ts | 8 ++--- .../quiztivity/play/navigation_bar.svelte | 9 +++--- .../share/[share_id]/+page.server.ts | 8 ++--- frontend/src/routes/remote/+page.svelte | 9 +++--- frontend/src/routes/results/+page.svelte | 9 +++--- frontend/src/routes/results/+page.ts | 8 ++--- .../routes/results/[result_id]/+page.svelte | 9 +++--- .../src/routes/results/[result_id]/+page.ts | 8 ++--- .../[result_id]/general_overview.svelte | 15 ++++------ .../[result_id]/player_overview.svelte | 9 +++--- .../[result_id]/question_overview.svelte | 9 +++--- .../[result_id]/question_tab_thing.svelte | 9 +++--- frontend/src/routes/search/+page.svelte | 8 ++--- .../src/routes/user/[user_id]/+page.svelte | 9 +++--- frontend/src/routes/user/[user_id]/+page.ts | 8 ++--- frontend/src/routes/view/+error.svelte | 9 +++--- .../src/routes/view/[quiz_id]/+page.server.ts | 4 +++ .../src/routes/view/[quiz_id]/+page.svelte | 9 +++--- frontend/svelte.config.js | 8 ++--- frontend/tailwind.config.cjs | 8 ++--- frontend/vite.config.js | 4 +++ gunicorn_conf.py | 3 ++ image_cleanup.py | 6 ++-- import_to_meili.py | 6 ++-- init_db.py | 12 -------- live_redis_data.md | 6 ++++ migrations/README | 6 ++++ migrations/env.py | 7 +++-- migrations/script.py.mako | 4 +++ .../0c081a52ab8a_added_google_oauth.py | 7 +++-- migrations/versions/17ea75679da8_init.py | 8 +++-- .../versions/25f2c34a69c8_added_webauthn.py | 4 +++ .../32649a1ffcf2_added_controllers_table.py | 4 +++ .../3f63c0130bce_added_instance_data.py | 4 +++ .../400f8ed06c48_added_background_color.py | 4 +++ .../438516c09cf3_added_game_results.py | 4 +++ migrations/versions/4bbe1850b61a_added_1.py | 4 +++ .../versions/694cb11c6886_added_totp.py | 4 +++ ...6dc09ad6f6ef_imported_from_kahoot_field.py | 8 +++-- .../versions/7ad8502af419_added_kahoot_id.py | 4 +++ .../7afe98d04169_added_custom_openid.py | 4 +++ .../820e06ef2c2a_added_background_image.py | 4 +++ .../versions/89c4b5d547aa_new_storage.py | 4 +++ .../8ac2bed1718e_added_quiztivityshares.py | 4 +++ .../901dfcdf8d38_added_backup_code.py | 4 +++ .../97144a8cf6b6_added_github_user_id.py | 4 +++ ...made_title_and_description_be_text_not_.py | 4 +++ .../cda6903dfc0c_added_cover_image.py | 4 +++ .../da778d551bf4_added_github_oauth.py | 8 +++-- .../versions/ec6cf07ff68a_added_apikey.py | 4 +++ .../versions/ff573859eb32_user_avatar.py | 4 +++ prestart.sh | 4 +++ pyproject.toml | 4 +++ pytest.ini | 4 +++ run_tests.sh | 7 ++--- simulate_players.py | 7 ++--- start.sh | 5 ++++ 371 files changed, 1629 insertions(+), 1069 deletions(-) create mode 100644 Pipfile.lock.license create mode 100644 frontend/.prettierrc.license create mode 100644 frontend/package.json.license create mode 100644 frontend/pnpm-lock.yaml.license create mode 100644 frontend/src/lib/assets/landing/admin_overview.webp.license delete mode 100644 init_db.py diff --git a/.deepsource.toml b/.deepsource.toml index ad41cf0..b6b20fd 100644 --- a/.deepsource.toml +++ b/.deepsource.toml @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 version = 1 test_patterns = ["classquiz/tests/**", "test_*.py"] diff --git a/.dockerignore b/.dockerignore index 81a38be..761d33e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1 +1,4 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 .env* diff --git a/.flake8 b/.flake8 index b5eaf3d..7c6c7e1 100644 --- a/.flake8 +++ b/.flake8 @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 [flake8] max-line-length = 120 extend-ignore = E203 diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 18e0402..f2a2922 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,2 +1,5 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 ko_fi: mawoka liberapay: Mawoka diff --git a/.github/ISSUE_TEMPLATE/Feature_request.md b/.github/ISSUE_TEMPLATE/Feature_request.md index a27612a..0b5fe58 100644 --- a/.github/ISSUE_TEMPLATE/Feature_request.md +++ b/.github/ISSUE_TEMPLATE/Feature_request.md @@ -1,3 +1,8 @@ + --- name: Feature request about: Make a clear demand for improving ClassQuiz 💪 diff --git a/.github/ISSUE_TEMPLATE/Repo_architecture_changes.md b/.github/ISSUE_TEMPLATE/Repo_architecture_changes.md index 6510be9..9ed93fc 100644 --- a/.github/ISSUE_TEMPLATE/Repo_architecture_changes.md +++ b/.github/ISSUE_TEMPLATE/Repo_architecture_changes.md @@ -1,3 +1,8 @@ + --- name: Project refactoring about: All issues concerning CI/CD, improvements of documentation, development setup etc. 🔧 diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index bbfc02c..0004577 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 name: Bug Report description: File a bug report labels: ["bug"] diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index fc94927..2b8a45c 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,3 +1,9 @@ + + #### :tophat: What? Why? *Please describe your pull request.* diff --git a/.github/codecov.yml b/.github/codecov.yml index e9e5a4f..be10478 100644 --- a/.github/codecov.yml +++ b/.github/codecov.yml @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 codecov: require_ci_to_pass: false diff --git a/.github/workflows/backend_lint.yml b/.github/workflows/backend_lint.yml index 6244a52..424f914 100644 --- a/.github/workflows/backend_lint.yml +++ b/.github/workflows/backend_lint.yml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions diff --git a/.github/workflows/build_backend.yml b/.github/workflows/build_backend.yml index 5fd62e3..0413205 100644 --- a/.github/workflows/build_backend.yml +++ b/.github/workflows/build_backend.yml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions diff --git a/.github/workflows/build_frontend.yml b/.github/workflows/build_frontend.yml index 04cd4c9..6fc106b 100644 --- a/.github/workflows/build_frontend.yml +++ b/.github/workflows/build_frontend.yml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions diff --git a/.github/workflows/frontend_lint.yml b/.github/workflows/frontend_lint.yml index 8086b68..2ff7b73 100644 --- a/.github/workflows/frontend_lint.yml +++ b/.github/workflows/frontend_lint.yml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index f711f30..7f5339a 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # .github/workflows/app.yaml name: PyTest on: diff --git a/.gitignore b/.gitignore index 0b48df5..f5c170f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + __pycache__/ .idea/ node_modules/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 2b3ff16..cc1f29a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: diff --git a/.tokeignore b/.tokeignore index 832776c..69314d6 100644 --- a/.tokeignore +++ b/.tokeignore @@ -1,2 +1,6 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + *.y*ml *.json diff --git a/CONTACT.md b/CONTACT.md index 94eb968..c1e19ec 100644 --- a/CONTACT.md +++ b/CONTACT.md @@ -1,3 +1,8 @@ + Welcome to the ClassQuiz community Grant and indulge critique constructively, within desired privacy. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1fa1177..43d1d54 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,3 +1,8 @@ + # Contribute to ClassQuiz For the development-setup, please check out the diff --git a/Caddyfile b/Caddyfile index 8f9581a..ee3c753 100644 --- a/Caddyfile +++ b/Caddyfile @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + #* { :8080 { # tls /home/mawoka/certs/cert.pem /home/mawoka/certs/key.pem diff --git a/Caddyfile-docker b/Caddyfile-docker index d8685c7..876e2b4 100644 --- a/Caddyfile-docker +++ b/Caddyfile-docker @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + :8080 { reverse_proxy * http://frontend:3000 reverse_proxy /api/* http://api:80 diff --git a/Dockerfile b/Dockerfile index 062cdeb..a07ba61 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + FROM python:3.11-slim COPY Pipfile* /app/ diff --git a/Pipfile b/Pipfile index f010ccd..8f1f6be 100644 --- a/Pipfile +++ b/Pipfile @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + [[source]] url = "https://pypi.org/simple" verify_ssl = true diff --git a/Pipfile.lock.license b/Pipfile.lock.license new file mode 100644 index 0000000..f883a78 --- /dev/null +++ b/Pipfile.lock.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) + +SPDX-License-Identifier: MPL-2.0 diff --git a/README.md b/README.md index e2896fb..1c50792 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ + + GitHub Repo stars GitHub contributors GitHub forks diff --git a/SocketIo.md b/SocketIo.md index c25c3bb..9c96694 100644 --- a/SocketIo.md +++ b/SocketIo.md @@ -1,3 +1,9 @@ + + # Socket.IO-Client-Docs ## Main structure diff --git a/alembic.ini b/alembic.ini index ebf940a..e07c686 100644 --- a/alembic.ini +++ b/alembic.ini @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + # A generic, single database configuration. [alembic] diff --git a/classquiz/__init__.py b/classquiz/__init__.py index 6984834..8baaf10 100644 --- a/classquiz/__init__.py +++ b/classquiz/__init__.py @@ -1,6 +1,6 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 import sentry_sdk from fastapi import FastAPI, Request diff --git a/classquiz/auth.py b/classquiz/auth.py index 5964cc6..93f4c23 100644 --- a/classquiz/auth.py +++ b/classquiz/auth.py @@ -1,6 +1,7 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + import uuid from datetime import timedelta from typing import Dict diff --git a/classquiz/cache.py b/classquiz/cache.py index 14fd059..2aee0c9 100644 --- a/classquiz/cache.py +++ b/classquiz/cache.py @@ -1,6 +1,6 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 import uuid from json import loads diff --git a/classquiz/config.py b/classquiz/config.py index 853ce74..4bf50b8 100644 --- a/classquiz/config.py +++ b/classquiz/config.py @@ -1,6 +1,7 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + import re from functools import lru_cache diff --git a/classquiz/db/__init__.py b/classquiz/db/__init__.py index cc00f70..f4e35bc 100644 --- a/classquiz/db/__init__.py +++ b/classquiz/db/__init__.py @@ -1,6 +1,7 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + import databases import sqlalchemy diff --git a/classquiz/db/models.py b/classquiz/db/models.py index 18e6b30..ccf8a34 100644 --- a/classquiz/db/models.py +++ b/classquiz/db/models.py @@ -1,6 +1,8 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + + import os import uuid from datetime import datetime diff --git a/classquiz/db/quiztivity.py b/classquiz/db/quiztivity.py index 5bfdc5f..4eb283d 100644 --- a/classquiz/db/quiztivity.py +++ b/classquiz/db/quiztivity.py @@ -1,6 +1,8 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + + from pydantic import BaseModel import enum diff --git a/classquiz/emails/__init__.py b/classquiz/emails/__init__.py index a398acc..c1f6ef0 100644 --- a/classquiz/emails/__init__.py +++ b/classquiz/emails/__init__.py @@ -1,6 +1,7 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at https://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2023 Marlon W (Mawoka) +# +# SPDX-License-Identifier: MPL-2.0 + import os import smtplib diff --git a/classquiz/emails/templates/footer.jinja2 b/classquiz/emails/templates/footer.jinja2 index 7a8e3c3..803d3e1 100644 --- a/classquiz/emails/templates/footer.jinja2 +++ b/classquiz/emails/templates/footer.jinja2 @@ -1,3 +1,8 @@ +