33aa0cecba
Provide current-user application-wide
...
* This change allows us to reuse the current user in multiple places.
* Sentry still receives the same information as before.
2023-09-08 11:48:53 +02:00
4b90a2a3c5
Add exercise feedback page for pair programming study
2023-09-05 22:56:51 +02:00
79422225a8
Add events for pair programming study
2023-09-05 22:56:51 +02:00
97764bd02e
Limit programming groups to two people
...
* adapt text on programming_groups/new site
* in German change from 'Sie' to 'du'
2023-09-05 22:56:51 +02:00
094aba096c
Fix feedback page by accessing the contributor
...
Fixes CODEOCEAN-TE
2023-08-30 18:16:47 +02:00
235bf771fe
Always use user object instead of ID and Type
2023-08-26 00:39:47 +02:00
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
9d1be1eeff
Migrate AnomalyNotification to contributor
...
* Also, this commit aims to fix the (broken) anomaly notifications.
2023-08-24 19:32:06 +02:00
a1941336d9
Fix Runner access for programming groups
...
* We also rename the corresponding columns in the Runner model, so that for polymorphic association gets clear.
2023-08-24 19:32:06 +02:00
977fa4539e
Check polymorphic type in validations
...
* Previously, some models had "duplicated" `belongs_to` associations, which were now removed (and replaced by the `include Creation`).
2023-08-24 19:32:06 +02:00
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
e3603758ef
Refactor LTI parameters and add study group
...
* This change also requires that submissions in our test need to have a valid study group.
2023-08-24 19:32:06 +02:00
e2baa2ee55
Send score for all members of a programming group
2023-08-24 19:32:06 +02:00
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
0234414bae
Rename user to contributor in submission
2023-08-24 19:32:06 +02:00
28a4b672f9
Remove legacy save search endpoint
2023-07-28 13:18:39 +02:00
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
5faf5be033
Fix Rubocop offenses
2023-07-27 09:32:45 +02:00
fd2d94568a
Handle OutOfMemory runner errors with gVisor
2023-07-21 16:38:49 +02:00
83d2b8f5fd
Add return value for Exercise#valid_submission_deadlines?
2023-06-23 22:20:04 +02:00
a16c1a2bd3
Order files by path and name
2023-05-11 22:50:33 +02:00
0aa73d30e9
Reduce SQL queries for querying files when creating submissions
...
This is especially useful for the RemoteEvaluationsController.
Closes CODEOCEAN-KX
2023-04-02 17:05:22 +02:00
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
5a36e57b9f
Reuse ActiveRecord object after creating StructuredErrorAttributes
...
With these changes, the newly created StructuredError will have all StructuredErrorAttributes preloaded, thus speeding up further access to this association.
2023-03-20 23:43:53 +01:00
a7cd85507e
Reduce SQL queries in the exercise controller
...
Fixes CODEOCEAN-JK
2023-03-14 20:58:21 +01:00
417ead3d3f
Reduce SQL queries to find a unsolved recommended RfC
...
Fixes CODEOCEAN-JQ
2023-03-14 13:56:23 +01:00
939b31967f
Reduce SQL queries for score runs
...
Fixes CODEOCEAN-JR
2023-03-14 13:56:23 +01:00
ddf041ac05
Check RfC visibility before redirecting users
2023-02-21 10:01:01 +01:00
d03f2c7bf4
Slightly improve Statistics Controller performance
2023-02-21 01:27:32 +01:00
9c3392b324
Add consumer-based RfC Visibility settings
...
This setting will be useful to increase data protection, where users might not be allowed to see RfCs from other contexts.
2023-02-20 23:47:06 +01:00
e632f95060
Prevent storing empty results
...
Fixes CODEOCEAN-HS
2023-02-17 18:13:48 +01:00
e96eda69d7
Bulk insert LinterCheckRuns
...
Similar to TestrunMessages, we insert all linter check runs through a bulk operation, potentially reducing time.
2023-02-16 10:50:01 +01:00
b375aed543
Bulk insert TestrunMessages
...
With Sentry, we identified that all TestrunMessages are created one-by-one (besides passing them all in an array to #create!). Therefore, we now do the validations on our own first and then store all once, dramatically reducing the required time.
Fixes CODEOCEAN-HP
2023-02-16 10:50:01 +01:00
90d713a1d4
fix (potential) problems with empty file_extensions
2023-02-09 18:42:24 +01:00
637f872f34
add file_extension validation for file_type
2023-02-09 18:42:24 +01:00
04504973ba
Adjust Sentry's user context
2023-02-03 00:16:52 +01:00
2679f5fa56
Allow random selection for ProxyExercise
2023-01-20 21:02:20 +01:00
5d02251cbb
Replace BooleanPresenceValidator with InclusionValidator
...
The `BooleanPresenceValidator` is causing issues with Ruby 3.2+ YJIT irregularly.
Fixes CODEOCEAN-GQ, fixes CODEOCEAN-GR
2023-01-08 14:10:14 +01:00
922ba5df4e
Fix rubocop offenses
2023-01-02 10:06:00 +01:00
7a2e442d91
Reject reference implementations only for Runs
2022-12-12 20:53:46 +01:00
bc5baed05e
Use exec_query
for custom SQL execution
...
Also align how we use query Postgres from controllers.
The change is mainly due to regular (but not reproducible) issues with the `intervalstyle` defaulting to `postgres` (instead of `iso8601`) and thereby causing issues. We're just experimenting to see whether this change resolves the issue.
2022-12-06 22:41:00 +01:00
b7a3fd4586
Refactor exercise statistics to use convert times in Ruby
2022-12-05 21:59:34 +01:00
574e99eddd
Fix rubocop offenses - Requires Ruby 3.1+
2022-11-25 11:10:06 +01:00
f17718f69f
CSP: Extract JavaScript from layout to assets
...
Fixes CODEOCEAN-CP
2022-11-16 19:47:58 +01:00
d50e6d30e9
List Files: Catch more Runner::Errors
2022-11-14 13:51:04 +01:00
2753e4ef5b
Always catch StandardError in Threads and release connection
2022-11-11 22:50:27 +01:00
cf957eb715
Prevent reference_implementation to be copied to Runner
2022-11-04 17:30:30 +01:00
58548555a5
Shell: Add file system browser to retrieve arbitrary files
2022-10-29 18:49:18 +02:00
60078701f5
Editor: Allow file retrieval after code run
2022-10-29 18:49:18 +02:00
ad8743a7d0
FileTree: Show more distinct icons where possible
2022-10-29 18:49:18 +02:00