I bit the bullet and jumped from 2.15 to 2.20. Everything seems to have gone smoothly, except for the Upgrade Courses. I can create new courses, manually move Templates over, the problem library is there, etc., etc.. As far as I can tell all the AUTH stuff also works, although more testing will happen on that.
But the Upgrade Courses button runs into some kind of problem that I don't understand.
Invalid path at /opt/webwork/webwork2/lib/WeBWorK/Utils/CourseDirectoryIntegrityCheck.pm line 77.
Context
72: my ($target, $path) = @{ $ce->{courseLinks}{$link} };
73:
74: # All links should actually be links, and should have the correct target. Note that the link target may also be
75: # a link, and so the realpath of the configured link target and realpath of the course link path must be
76: # compared to check that the link target is correct.
77: my $good = -l $path && path($path)->realpath eq path($target)->realpath;
78:
79: $links_ok = 0 if !$good;
80: push @results, [ $link, $target, $path, $good ];
81: }
82:
So something in the upgrade is running into a file path issue, but there's no indication as to what it is, or where. I've resorted to dumping most of my historic courses out of the /webwork/courses/ directory to manually try to debug it down to an example of something that fails. And I would like to be able to login to a couple of the older courses to fix some export issues, but they all fail with
It looks like the database is missing a column. You may need to upgrade your course tables. If this is the admin course then you will need to upgrade the admin tables using the upgrade_admin_db.pl script. at /opt/webwork/webwork2/lib/WeBWorK/DB/Database.pm line 133.
Any advice or suggestions would be welcome!