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
ef5dd80ea7
Increase wait timeout for new execution environments to 60 sec
2022-10-11 21:14:07 +02:00
66ab00a6bd
Fix association to testrun_execution_environment
2022-10-11 21:08:34 +02:00
d80a8dd64f
Fix Submissions index page
...
Closes CODEOCEAN-BJ
2022-10-11 20:21:13 +02:00
065f93f79c
Return empty programming language if no ACE mode is set
2022-10-06 00:25:22 +02:00
4f5f71840a
Change order of tests to execute linter checks first
2022-10-05 19:38:38 +02:00
42a7bf9983
Remove outdated enums for testrun_message
...
These enums are not present in the database.
2022-10-04 16:07:00 +02:00
ca13ea03c8
SubmissionsController: Send Content-Length if possible
2022-10-04 16:06:59 +02:00
f53c6cb3ee
Shell: Add toggle to execute command as root
2022-10-04 16:06:58 +02:00
4b00eb1e8c
Allow internal users to switch their current study group
2022-09-26 16:30:54 +02:00
eb188dcd71
Add privilegedExecution flag to database and Poseidon Strategy
2022-09-24 22:32:41 +02:00
0e7c38657f
Allow teachers to access internal users and manage them in their study groups
2022-09-22 19:24:26 +02:00
ac3dc8d30f
Allow platform admins and internal users to switch their current study group
2022-09-22 19:24:26 +02:00
4d2fe22daf
Allow assignment of study groups for internal users
2022-09-22 19:24:26 +02:00
998a12e6bc
Adjust filter for platform_admin user search and update views
2022-09-22 19:24:26 +02:00
936c11e31f
Refactor authentication token for new study-group-based authorization
2022-09-22 19:24:26 +02:00
cb1b163b30
Always create a default study group for new consumers
2022-09-22 19:24:26 +02:00
9c9f45ff77
Redefine user roles with their role in a study group
2022-09-22 19:24:26 +02:00
04ed45ea73
Migrate database and models for study-group-based authorization
2022-09-22 19:24:26 +02:00
bbb791471b
Remove AWS study
2022-09-21 18:57:12 +02:00
d02a1eae81
Validate password strength for internal users
2022-09-14 12:19:25 +02:00
0a16f589e9
Use X-Sendfile to transmit native files and handle file uploads
2022-09-06 01:21:40 +02:00