tbrown122387 / gradeR

helps grade R script assignment submissions!
Other
4 stars 4 forks source link

GradeR not loading tidyverse? #21

Closed davbachman closed 9 months ago

davbachman commented 9 months ago

I now have a colleague using all my old assignments and autograders. They worked great for him last year but now they stopped.

One line of the setup.sh code that he was using was this: Rscript -e "install.packages('devtools'); devtools::install_github('tbrown122387/gradeR’)"

That came from an old exchange with you when I was having some trouble implementing something. I don’t know if this line of code is what is now causing issues, but my colleague is getting an error from Gradescope that says “library gradeR not found”.

I had him change the above setup.sh code to this instead: Rscript -e "install.packages('gradeR')"

And the error changed to:

“Error: library(tidy verse)” NULL

However, my setup file does include this line: Rscript -e "install.packages('tidyverse')"

Any help you can give us would be appreciated!

Zip file attached.

Archive.zip

tbrown122387 commented 9 months ago

If you look at the build output in Gradescope, you'll see the setup.sh file fails to install tidyverse. I won't copy/paste the entire output, but I spotted a few "ERROR" messages:

ERROR: configuration failed for package ‘systemfonts’
ERROR: dependency ‘systemfonts’ is not available for package ‘textshaping’
ERROR: dependencies ‘systemfonts’, ‘textshaping’ are not available for package ‘ragg’
ERROR: dependency ‘ragg’ is not available for package ‘tidyverse’

You'll need to add some apt-get lines to setup.sh. See here for more info.

I'll leave this issue open for a while, but this is not a gradeR issue.

davbachman commented 9 months ago

OK, that helped. Added several apt-get lines. No errors on compilation now, and tidyverse loads. However, things still aren't working right: it graded every problem as incorrect (they're not)! New zip file attached. Archive.zip

tbrown122387 commented 9 months ago

In the file run_autograder try changing the last line from

Rscript grade_one_submission_hw2.R

to

LC_ALL= Rscript grade_one_submission_hw2.r

So you're just adding LC_ALL= to the beginning to change an environment variable.

If that works please let me know. Same thing happened to me. Note that that command is space sensitive.

davbachman commented 9 months ago

Almost! It graded all problems correctly except for two of them. (I'll double check those solutions.)

tbrown122387 commented 8 months ago

As an aside, I just had an assignment for my class that used tidyverse that required an extra environment variable to be set. I was getting an error message that said "System has not been booted with systemd as init system (PID 1). " Here's what my run_autograder file looks like now. Notice that "TZ='America/New_York'" bit

#!/usr/bin/env bash

# Set up autograder files

cp /autograder/submission/hw4.Rmd /autograder/source/hw4.Rmd

cd /autograder/source

Rscript -e 'knitr::purl("hw4.Rmd", "hw4.R")'
TZ='America/New_York' LC_ALL= Rscript grade_one_submission.r