@JamieLambert ...
Out of curiosity, are your students submitting the actual *.py, *.cpp, and/or *.h files to you via your Canvas assignment(s)? Or, are they first zipping up their files in *.zip files and attaching those to submit to you? Yes, there are only certain files that are viewable within the SpeedGrader. You can find a listing of those in:
What types of files can be previewed in Canvas? - Instructure Community - 607 (canvaslms.com)
Are there any differences you might be able to pinpoint comparing previous semesters to now? Just trying to do some initial brainstorming here.
Hope to hear back from you soon.