Open debbieyuster opened 4 years ago
@debbieyuster I'm on it! Were you more interested in getting this for the Gradescope piece, or the one that runs on your local machine?
@tbrown122387 That's great!! I will be using Gradescope this semester so that would be my personal preference. I'm sure there would be community interest in both options though, seems to me Jupyter notebooks have a big advantage over Rmd when it comes to autograding currently. This could help level the field and allow scale-up of courses using Rmd.
@debbieyuster okay cool. No promises on getting this on CRAN before the start of the semester--but, a quick DIY solution would be to change the run_autograder
shell script to convert the Rmd file to a .R file (this is from the vignette) You would just have to add a line like
Rscript -e 'install.packages("knitr"); knitr::purl("hw1.Rmd", "hw1.R")'
This runs the R
code in between single apostrophes. So the entire run_autograder
shell script would be changed to
#!/usr/bin/env bash
# Set up autograder files
Rscript -e 'install.packages("knitr"); knitr::purl("/autograder/submission/assignment1.Rmd", "/autograder/submission/assignment1.R")'
cp /autograder/submission/assignment1.R /autograder/source/assignment1.R
cd /autograder/source
Rscript grade_one_submission.r
@tbrown122387 Thank you! I also wanted to mention that Otter Grader (a Python autograder from UC Berkeley) is adding R and Rmd autograding functionality through Gradescope. It's a work in progress but they just released something. You may decide to move Rmd support down on your list because of this - I haven't looked yet at how their solution might differ from yours.
@debbieyuster okay cool. No promises on getting this on CRAN before the start of the semester--but, a quick DIY solution would be to change the
run_autograder
shell script to convert the Rmd file to a .R file (this is from the vignette) You would just have to add a line likeRscript -e 'install.packages("knitr"); knitr::purl("hw1.Rmd", "hw1.R")'
This runs the
R
code in between single apostrophes. So the entirerun_autograder
shell script would be changed to#!/usr/bin/env bash # Set up autograder files Rscript -e 'install.packages("knitr"); knitr::purl("/autograder/submission/assignment1.Rmd", "/autograder/submission/assignment1.R")' cp /autograder/submission/assignment1.R /autograder/source/assignment1.R cd /autograder/source Rscript grade_one_submission.r
This is the approach I took and it works fine. Thanks for such a great tool.
Feature request: support for grading R Markdown would be amazing!! @tbrown122387