This change will store large events (larger than 8KB) for ActionCable in the database. Therefore, it resolves issues where the payload was previously too large.
Fixes#1920
Fixes CODEOCEAN-Y8
Fixes CODEOCEAN-WS
Previously, the same runner could be used multiple times with different submissions simultaneously. This, however, yielded errors, for example when one submission time oud (causing the running to be deleted) while another submission was still executed.
Admin actions, such as the shell, can be still executed regardless of any other code execution.
Fixes CODEOCEAN-HG
FixesopenHPI/poseidon#423
* Remove deprecated options from environments
* Remove deprecation warnings for upcoming Rails 7.2
* Dump schema with new defaults
* Remove outdated (and erroneous) data attribute in view
* Resolve a `NoMethodError` for seeds_spec.rb
* Correct sorting in table
* Modify page when nested in exercises
* Fix links between pages
* Link from statistics page to programming_groups/index
* Link from submission page to programming_groups/<id>
* Allow filtering for exercise ID on ProgrammingGroup#index
* Add search fields for internal and external user id on pg/index
Since both projects are developed together and by the same team, we also want to have the same code structure and utility methods available in both projects. Therefore, this commit changes many files, but without a functional change.
* Ensure only one `pp_work_alone` event is stored.
* Disable Turbolinks for Programming Groups Work Alone, so that the implement page is requested normally. Otherwise, Turbolinks would load the page first, just to notice that it needs to reload the page afterwards to include Highlight.js for the tips.
Further, we remove the "check invitation" button and extract some methods to our new ProgrammingGroups object in JavaScript.
Co-authored-by: Sebastian Serth <Sebastian.Serth@hpi.de>
Otherwise, the ACE events we receive might not be forwarded in the same order. For now, I am not aware of another mechanism to ensure the correct ordering, so that I decided to use this approach for now. Might need to be improved later.