dependabot[bot]
bcb6409126
Bump rubocop from 1.57.2 to 1.58.0 and fix offenses
...
Bumps [rubocop](https://github.com/rubocop/rubocop ) from 1.57.2 to 1.58.0.
- [Release notes](https://github.com/rubocop/rubocop/releases )
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop/rubocop/compare/v1.57.2...v1.58.0 )
---
updated-dependencies:
- dependency-name: rubocop
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-12-07 11:02:00 +01:00
kiragrammel
175c8933f3
Automatically submit LTI grade on each score run
...
With this commit, we refactor the overall score handling of CodeOcean. Previously, "Score" and "Submit" were two distinct actions, requiring users to confirm the LTI transmission of their score (after assessing their submission). This yielded many questions and was unnecessary, since LTI parameters are no longer expiring after each use. Therefore, we can now transmit the current grade on each score run with the very same LTI parameters. As a consequence, the LTI consumer gets a more detailed history of the scores, enabling further analytical insights.
For users, the previous "Submit" button got replaced with a notification that is shown as soon as the full score got reached. Then, learners can decide to "finalize" their work on the given exercise, which will initiate a redirect to a follow-up action (as defined in the RedirectBehavior). This RedirectBehavior has also been unified and simplified for better readability.
As part of this refactoring, we rephrased the notifications and UX workflow of a) the LTI transmission, b) the finalization of an exercise (measured by reaching the full score) and c) the deadline handling (on time, within grace period, too late). Those information are now separately shown, potentially resulting in multiple notifications. As a side effect, they are much better maintainable, and the LTI transmission is more decoupled from this notification handling.
2023-11-23 14:42:10 +01:00
Sebastian Serth
ed7a3c848f
Hide reference implementations if another file with same name is already present
2023-11-20 23:16:48 +01:00
Sebastian Serth
4537f2bf75
Allow viewing submissions without corresponding exercise
...
Fixes CODEOCEAN-S7
2023-11-06 00:24:51 +01:00
kiragrammel
26552a0682
Remove PairProgrammingExerciseFeedback
...
* Remove view, controller, routes & policy for PairProgrammingExerciseFeedback
* Keep model & database table
2023-10-22 12:07:41 +02:00
Sebastian Serth
0e387ffda2
Add association for Comments and RequestForComments
...
For the submission and comments, I mainly decided to use a `has_one` association. Based on the database schema, multiple request for comments could be allowed (i.e., for each file or submission), but this won't happen practically (since we always create new submissions and files). Hence, the `has_one` association is representing our relationship better.
2023-09-25 18:17:52 +02:00
kiragrammel
4b90a2a3c5
Add exercise feedback page for pair programming study
2023-09-05 22:56:51 +02:00
kiragrammel
01accdae58
Use author_in_programming_group? policy for files & RfCs
...
* Allow all members of a programming group to list and solve RfCs
* Also adjust policy specs to respect programming groups
2023-08-24 19:32:06 +02:00
Sebastian Serth
be4f2b790d
Add user to testrun
...
* We want to identify a user that has triggered a testrun. Previously (in regular operation), only submission author who were regular users were able to start a testrun. Now, we want to prepare a future where submission authors are programming groups. Still, a testrun is triggered by an individual user and not a group.
* Further, this commit fixes some missing foreign key constrains.
2023-08-24 19:32:06 +02:00
kiragrammel
e2baa2ee55
Send score for all members of a programming group
2023-08-24 19:32:06 +02:00
kiragrammel
319c3ab3b4
Add ProgrammingGroup & ProgrammingGroupMembership
...
* User can create programming group with other users for exercise
* Submission is shared in a group
* Also adjust specs
2023-08-24 19:32:06 +02:00
kiragrammel
0234414bae
Rename user to contributor in submission
2023-08-24 19:32:06 +02:00
Sebastian Serth
db56a690c7
Add option to suppress feedback messages
...
This is used to dynamically exclude some test results from being shown to users, but still allows them to run in the background (e.g., for research).
2023-07-27 10:38:49 +02:00
Sebastian Serth
e3e6fc3af1
Add foreign keys and an index to StructuredError(Attributes)
...
These changes will ensure a better data consistency and faster access. We further ensure that records should be deleted properly.
2023-03-20 23:50:12 +01:00
Sebastian Serth
417ead3d3f
Reduce SQL queries to find a unsolved recommended RfC
...
Fixes CODEOCEAN-JQ
2023-03-14 13:56:23 +01:00
Sebastian Serth
ddf041ac05
Check RfC visibility before redirecting users
2023-02-21 10:01:01 +01:00
Sebastian Serth
7a2e442d91
Reject reference implementations only for Runs
2022-12-12 20:53:46 +01:00
Sebastian Serth
574e99eddd
Fix rubocop offenses - Requires Ruby 3.1+
2022-11-25 11:10:06 +01:00
Sebastian Serth
2753e4ef5b
Always catch StandardError in Threads and release connection
2022-11-11 22:50:27 +01:00
Sebastian Serth
cf957eb715
Prevent reference_implementation to be copied to Runner
2022-11-04 17:30:30 +01:00
Sebastian Serth
d80a8dd64f
Fix Submissions index page
...
Closes CODEOCEAN-BJ
2022-10-11 20:21:13 +02:00
Sebastian Serth
4f5f71840a
Change order of tests to execute linter checks first
2022-10-05 19:38:38 +02:00
Sebastian Serth
bbb791471b
Remove AWS study
2022-09-21 18:57:12 +02:00
Sebastian Serth
166aa3cc6f
Remove Ransack from Exercise edit for tags
...
* Also improve Ransack usage of attributes and associations
2022-08-20 01:33:00 +02:00
Sebastian Serth
f0b89d8461
Fix Rubocop offense
2022-05-06 16:42:30 +02:00
Sebastian Serth
6d95b921f0
Limit RfC display to the last months
2022-05-06 16:29:52 +02:00
Sebastian Serth
e4384d7ddd
Merge pull request #1242 from openHPI/refactor_testrun_table
...
Refactor testrun table
2022-05-04 00:25:08 +02:00
Sebastian Serth
2ce9c4258a
Remove New Relic
2022-04-29 22:53:36 +02:00
Sebastian Serth
ea02dff0e5
Extend storage of Testrun Messages and truncate long output
2022-04-29 22:44:34 +02:00
Sebastian Serth
5ecba6ef70
Persist TestrunMessages and store timestamp
...
So far, the Testrun messages are in addition to the Tesstrun.output column
2022-04-29 01:00:51 +02:00
Sebastian Serth
e9efb5bc2b
Add exit_code and status to Testruns, create model for TestrunMessages
...
* This is the first step to migrate the `output` column from Testruns to a dedicated table TestrunMessages
2022-04-28 15:18:51 +02:00
Sebastian Serth
0f378ce151
Limit RfC display to the last three months
2022-04-26 19:00:55 +02:00
Sebastian Serth
d10735d0a8
Persist Execution Environment when running code
2022-04-15 15:22:19 +02:00
Sebastian Serth
4887f4af02
Implement A/B Test for using AWS as an executor for Java
2022-04-15 15:22:19 +02:00
Sebastian Serth
ea85519163
Update bundle (with newest rubocop version) and fix offenses
2022-01-04 09:42:37 +01:00
Sebastian Serth
79edace57b
Use BigDecimals for score calculations
2021-12-16 23:12:16 +01:00
Sebastian Serth
0c1a10959c
Use file name with file path as identifier
2021-12-15 00:52:31 +01:00
Sebastian Serth
5aee2aaba8
Add more logging for execution requests
2021-11-18 14:18:41 +01:00
Sebastian Serth
c2ea27b3ee
Add annotation about exceptions to submission.rb
2021-11-14 22:45:37 +01:00
Sebastian Serth
92eafa145c
Swap runner during score if timeout occurred
2021-11-04 18:43:16 +01:00
Sebastian Serth
91af20b5ce
Disallow assessment files during run
2021-11-02 16:19:24 +01:00
Sebastian Serth
0b4217b12d
Memoize collect_files
2021-11-02 16:19:01 +01:00
Sebastian Serth
d87e23b9a3
Add execute_command
method to runner.rb
...
* This is now used by the score and test runs
* This also re-enables the interactive shell for execution environments
2021-11-01 17:13:05 +01:00
Sebastian Serth
7285978ea3
Re-add test method for SubmissionsController
2021-11-01 17:13:01 +01:00
Sebastian Serth
5f98456276
Extract run_test_file from submission.rb
2021-11-01 17:13:01 +01:00
Sebastian Serth
2377f8370c
Clarify set_file and set_files in SubmissionsController
2021-11-01 17:13:00 +01:00
Sebastian Serth
0c22e1392a
Remove outdated mnemosyne traces
2021-11-01 17:12:55 +01:00
Sebastian Serth
13c378b980
Remove concurrent ruby gem no longer needed
2021-11-01 17:12:55 +01:00
Felix Auringer
c7369366d5
Ensure that only one EventMachine is running
2021-11-01 17:12:52 +01:00
Felix Auringer
5cc180d0e9
Fix rubocop, I18n, cleanup rebase
2021-11-01 17:12:52 +01:00