openHPI / codeharbor

Exchange of Programming Exercises acrossdiverse Code Assessment Systems through CodeHarbor
BSD 3-Clause "New" or "Revised" License
6 stars 3 forks source link

Upgrade to Rails 7.2, switch to system specs, and add PWA and devcontainers support #1589

Open MrSerth opened 3 weeks ago

MrSerth commented 3 weeks ago

With this PR, we are upgrading CodeHarbor to Rails 7.2 and making use of all the great features the new version provides. Therefore, this PR looks rather big at a first glance, but the commits are intended to provide a meaningful grouping of the changes. All commits are required to complete the upgrade and the activation of current best-practices for Rails application.

From a high-level point of view, the following changes are relevant:

Screenshots of enhanced PWA support

**Shortcuts with native app experience:** Bildschirmfoto 2024-08-16 um 14 17 42

Screenshots of GitHub Codespaces running CodeHarbor

**Codespaces Editor:** Bildschirmfoto 2024-08-16 um 14 03 46 **Remote Access:** Bildschirmfoto 2024-08-16 um 14 03 51

List of commits

Specifically, this PR adds the following commits: - Upgrade to Rails 7.2 and apply new framework defaults - Remove outdated reference to node_modules folder - Add brakeman with GitHub action pipeline - Add production-ready Docker image - Add webmanifest and basic PWA support - Apply current config for Rspec and move extensions to support directory - Move ungrouped specs to a dedicated folder `other` - Fix warning about stubbing a method on `nil` - Ensure select2 is initialized regardless of page load events - Migrate feature specs to system specs - Switch to Rspec native transactional fixtures to replace database cleaner - Add support for devcontainers - Add support for GitHub Codespaces and port forwarding - Add recent changes to Local Setup Guides

codecov[bot] commented 3 weeks ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.15%. Comparing base (0161c22) to head (7d62cf2). Report is 12 commits behind head on master.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1589 +/- ## ========================================== + Coverage 94.14% 94.15% +0.01% ========================================== Files 123 126 +3 Lines 3004 3013 +9 ========================================== + Hits 2828 2837 +9 Misses 176 176 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.