e8619ae5f5
Add safeguard for sentry_span in connection.rb
2023-09-19 10:13:45 +02:00
56b6380f4d
Capture invalid JSON received from runner management
...
Related to https://github.com/openHPI/codeocean/issues/1914
2023-09-19 10:13:45 +02:00
cc4f1d2ace
Fix wrong test result output for Julia adapter
2023-09-16 16:09:17 +02:00
44618f6ac4
Add fixed enrolled users to PairProgramming23Study
2023-09-13 01:28:13 +02:00
c29256aa81
Fix Rubocop offenses
2023-09-11 14:10:16 +02:00
f47e29fae9
Fix missing sentry breadcrumb for websocket connection
...
It seems like we are still not setting the Sentry hub correctly. Therefore, we just use the hub passed with the span to add the breadcrumbs.
2023-09-08 00:01:20 +02:00
aaf1162cf8
Bump sentry-ruby and sentry-rails
...
Bumps [sentry-ruby](https://github.com/getsentry/sentry-ruby ) and [sentry-rails](https://github.com/getsentry/sentry-ruby ). These dependencies needed to be updated together.
Updates `sentry-ruby` from 5.10.0 to 5.11.0
- [Release notes](https://github.com/getsentry/sentry-ruby/releases )
- [Changelog](https://github.com/getsentry/sentry-ruby/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-ruby/compare/5.10.0...5.11.0 )
Updates `sentry-rails` from 5.10.0 to 5.11.0
- [Release notes](https://github.com/getsentry/sentry-ruby/releases )
- [Changelog](https://github.com/getsentry/sentry-ruby/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-ruby/compare/5.10.0...5.11.0 )
---
updated-dependencies:
- dependency-name: sentry-ruby
dependency-type: direct:production
update-type: version-update:semver-minor
- dependency-name: sentry-rails
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-07 14:16:10 +02:00
0b42bba988
Assign users into A/B groups
2023-09-05 22:56:50 +02:00
ac92385dd7
Rename remaining occurrences of webpacker to shakapacker
2023-09-01 19:39:51 +02:00
8ba5d5a984
Allow enabling pair programming study through env
2023-08-26 00:38:58 +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
2fb8def1d0
Add PairProgrammingStudy
...
* Later used to create the A/B groups
2023-08-24 19:32:06 +02:00
730e6f85eb
Migrate color-mode-picker to work with Turbolinks
...
Fix CODEOCEAN-FRONTEND-2D
2023-08-16 23:49:50 +02:00
3b4fc0a5ec
Fix ActionCable load error due to custom inflection for middleware
2023-08-16 17:11:23 +02:00
246cd209f3
Fix access of current theme during page load
2023-08-07 22:07:36 +02:00
944b455194
Introduce Dark Mode
...
This commit mainly changes the color definitions. Mostly, those changes are semantically equally, but there are a few changes that occurred to align the color scheme within the app.
2023-07-31 11:48:42 +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
fd2d94568a
Handle OutOfMemory runner errors with gVisor
2023-07-21 16:38:49 +02:00
bcdc71021e
Fix Rubocop offenses
2023-06-11 20:46:45 +02:00
e59c991ece
Add first version of JuliaAdapter
...
The adapter was tested with a first demo exercise, but further adjustments might be necessary to cover all edge cases.
2023-05-11 22:26:13 +02:00
f6278b27cf
Determine WebSocket connection without Upgrade header
...
The HTTP Upgrade header is hop-by-hop only and therefore removed by a reverse proxy.
Read more: http://nginx.org/en/docs/http/websocket.html
2023-05-10 00:26:27 +02:00
240fbc5a3b
Add Sentry instrumentation for JavaScript
2023-05-09 22:10:40 +02:00
6a0c4976ba
Re-Allow successfully synchronization of environments
...
We previously fixed an issue with bootstrapping Poseidon, but unfortunately mixed with the conditions.
Amends c59eaa05
Fixes CODEOCEAN-M7
2023-04-17 22:23:25 +02:00
c59eaa05bb
Handle bootstrapping of Poseidon when no environments
...
When starting Poseidon with an empty Nomad cluster, the list of existing environments is empty. In this case, however, our error handler threw an error, which was not correct.
Fixes CODEOCEAN-M7
2023-04-14 13:37:45 +02:00
c407d8cb8b
Capture context for Sentry errors during WebSocket connection
...
Special handling is needed to ensure we have the transaction ID and Rack ENV. Otherwise the error cannot be matched to a transaction in Sentry. This special behavior is needed because of the underlying EventMachine, which executes code in a different thread/context.
2023-04-14 12:50:50 +02:00
0dd931fba1
Add runner management health check for /ping
...
Even though we can check the health of the runner management, we would like to ensure an external health check validates the availability of all required services.
2023-03-13 22:54:14 +01:00
e9cf79085a
Refactor listing files to be independent of exiting runners
...
Previously, we were always fetching files, even if not required (e.g., for score runs). Now, we reduce the number of file listings and use a dedicated callback.
2023-02-16 10:50:01 +01:00
a558a6df3b
Shorten message name for sentry hub cloning
2023-02-16 10:47:58 +01:00
91c2e14fe8
Fix error handling during Runner::Connection close
...
Closes CODEOCEAN-HQ
2023-02-16 10:47:28 +01:00
4a8653040c
Use deep merge for Runner::Connection headers
2023-02-12 14:08:54 +01:00
b1372e880c
Enable Sentry instrumentation for WebSocket connection
2023-02-12 13:51:10 +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
b80d372c53
Prevent errors with unavailable linter translations
...
Not all testing frameworks provide a translation for Linter (or linter support at all). For these, we don't want to call the non-existing method but rather return the same messages as before.
2022-12-23 13:05:39 +01:00
fb9ab4cd61
DCP: Allow unused keyword arguments for Rubocop
2022-12-19 17:09:59 +01:00
82bb0dd5d1
Return default for retrieve_files
...
Fixes CODEOCEAN-G7
2022-12-19 16:10:38 +01:00
66921d92bb
Fix assets:precompile
to be idempotent again
...
Each execution regenerates the manifest, so that we also need to rewrite the hashes.
2022-12-06 20:21:58 +01:00
7debe371b3
Actually write changed manifest to disk
2022-12-06 19:43:15 +01:00
cfb5fac5b2
Prevent adding duplicate lines for source maps
2022-12-06 19:43:05 +01:00
de0c1d368c
Add source map for sprockets
2022-12-06 15:26:50 +01:00
4ecaee9d6c
Prevent reloading of SRI helpers in development
...
Otherwise, each code reload would re-add the SRI helpers and thus break the inclusion of asset tags.
2022-12-05 18:20:47 +01:00
574e99eddd
Fix rubocop offenses - Requires Ruby 3.1+
2022-11-25 11:10:06 +01:00
61c4d5a894
Provide default for retrieve_files method
...
Fixes CODEOCEAN-F4
2022-11-17 20:47:33 +01:00
d50e6d30e9
List Files: Catch more Runner::Errors
2022-11-14 13:51:04 +01:00
1592d42d1a
Junit5: Recognize opentest4j AssertionFailedError
2022-11-11 23:34:17 +01:00
2753e4ef5b
Always catch StandardError in Threads and release connection
2022-11-11 22:50:27 +01:00
9ea94ed4fc
Explicitly copy folders before adding files
...
This allows to protect copied files while additionally allowing learners to add new files in copied subdirectories
2022-10-29 18:50:27 +02:00
9e7b3b7b58
Update keyword arguments for #retrieve_files
2022-10-29 18:49:18 +02: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