softwareconstruction240 / autograder

Autograder for BYU's CS 240 Chess project
https://cs240.click
2 stars 2 forks source link

Backend: Identify Common Issues — Client/Server Interdependency #366

Closed frozenfrank closed 1 month ago

frozenfrank commented 1 month ago

This is a sub-issue of #266 that describes and defines one issue that can be solved independent of the others.

Overview

The fail to compile error already contains the exact output, and if students looked carefully, they would be able to figure this one out. However, they often don't realize that they crossed significant boundaries. Students who run into this error usually fail to understand how separate and distinct the client and server are from each other; they think of them as just one big project, which it's not.

Detection Strategy

Scan the packaging output for specific files importing objects from the client or server module inappropriately

Implementation Details

When there is a problem packaging the repo, scan the error output for regexes that indicate this issue. Then warn the student that this is an issue they need to fix. We can still refer to the generated error output for the actual line and column definitions of the packages not allowed.