Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request package upgrade for Otter Grader in the EECS Hub #4495

Open
balajialg opened this issue Apr 18, 2023 · 23 comments
Open

Request package upgrade for Otter Grader in the EECS Hub #4495

balajialg opened this issue Apr 18, 2023 · 23 comments
Assignees
Labels
maintenance window Tasks prioritized for maintenance window package-request Package addition request for a hub

Comments

@balajialg
Copy link
Contributor

balajialg commented Apr 18, 2023

Package Name

Otter Grader

Hub details

  • Hub: EECS Hub (eecs.datahub.berkeley.edu)
  • Language: Python

Course Name

As per @chrispyles. Upgrading otter-grader to version 3.3.0 is required for solving problems experienced by students enrolled in EE 120 course.

Semester Details

Spring 23

Installation Deadline

None as this is an experimental change which might prevent students from experiencing the same issue.

@balajialg balajialg added the package-request Package addition request for a hub label Apr 18, 2023
@balajialg balajialg changed the title Request package upgrade for Otter Grader for EECS Hub Request package upgrade for Otter Grader in the EECS Hub Apr 18, 2023
@balajialg
Copy link
Contributor Author

balajialg commented Apr 18, 2023

@NSagan271 In #4496, you highlighted that otter version v4.2.1 solves the problem locally. Does that mean you recommend upgrading to v4.2.1 over v3.3.0? If yes, couple of things to consider,

  1. Can you confirm whether the test cases work for v4.2.1?
  2. This change could affect other courses that use otter-grader in the EECS hub. We need confirmation from other instructors who use otter-grader to make this upgrade.

@NSagan271
Copy link

NSagan271 commented Apr 18, 2023

I can try downgrading locally to 3.3.0 (probably later today) and test it. Note that #4496 is non-urgent; even if upgrading to 4.2.1 is the only solution, there's no rush to perform that upgrade.

@chrispyles
Copy link
Collaborator

I advise against doing a major version upgrade (v3.x.x -> v4.x.x) in the middle of a semester. There are likely to be breaking changes.

@balajialg
Copy link
Contributor Author

balajialg commented Apr 18, 2023

Thanks @chrispyles and @NSagan271 - Will scope this activity for maintenance window (after the semester end)!

@balajialg balajialg added the maintenance window Tasks prioritized for maintenance window label Apr 18, 2023
@balajialg
Copy link
Contributor Author

balajialg commented May 18, 2023

@NSagan271 Can you let us know whether you/instructional team want to upgrade otter grader to version 4.2.1 now? If yes, couple of things to consider

  • Please evaluate whether you might need to update the test cases because of this upgrade
  • I will reach out to other instructors using otter grader in EECS hub to verify whether they are okay with this upgrade.

@NSagan271
Copy link

I just graduated, so it's no longer up to me (and I'm unsure who's going to be on the instructional team next semester---I think hiring is still in flux).

That being said, I'd recommend upgrading to 4.2.1 if other instructors are ok with it: it does seem to fix the issue and might fix other bugs as well. I saw that datahub.berkeley.edu was going to upgrade to 4.2.0 before this semester, how did that go?

@balajialg
Copy link
Contributor Author

Thanks @NSagan271 congratulations on your graduation. Who is the instructor for the class you TA'ed? Please tag them in this issue so that there is some continuity.

Datahub otter upgrade went smoothly this semester. I will check whether the instructors rewrote the test case at their end. Do you know other eecs courses that use otter-grader in eecs hub?

@NSagan271
Copy link

Thank you! The instructor was Babak Ayazifar, but he's going on sabbatical next year. The instructor next semester is Kannan Ramchandran, I can see if he has a Github. I'll also tag some future TAs once I get more information on what the instructional team will look like next semester. I can continue to be the point of contact in the meantime.

I'm not sure if any other classes in the eecs hub use otter-grader.

@balajialg
Copy link
Contributor Author

Sounds great. Thank you so much @NSagan271

@NSagan271
Copy link

@balajialg: @yousefh409 (my co-head TA from last semester) will be staying on, and he can be the new point of contact for this thread!

@balajialg
Copy link
Contributor Author

Thanks @NSagan271. Appreciate it!

@yousefh409
Copy link

Hi @balajialg, I was wondering if there were any updates on this matter?

@balajialg
Copy link
Contributor Author

balajialg commented Jul 24, 2023

@yousefh409 No, we didn't make this upgrade as one of the summer courses using the EECS hub uses the current version v3.1.4 of Otter Grader.

Having said that, Otter grader version 5.0.1 got released recently (https://github.com/ucbds-infra/otter-grader/tags) and the latest stable version that got recommended to use is v4.4.1. Do you want to switch to v4.4.1 for FA 23? If yes, some test cases needs to get rewritten and @sean-morris has been helping Data 8 upgrade to the latest version of otter grader. He can help you folks with this upgrade.

Do you guys want to follow Data8's path and upgrade to v4.4.1 or stick to v3.3.0.

@yousefh409
Copy link

@balajialg Do you know to what extent the test cases must be re-written (maybe @sean-morris would know as well). Trying to gauge whether it would be worth it for us.

@sean-morris
Copy link
Collaborator

Just saw this! I can help with the transition to v4. I am not sure about test cases @balajialg . We will talk tomorrow

@balajialg
Copy link
Contributor Author

balajialg commented Jul 26, 2023

@yousefh409 I just had a chat with @sean-morris about the version upgrade. Listing the options in a bit more detailed way below,

  • You make the switch to version 4.4.1 and get some performance improvements including reduced files size. Eg: No more shipping of tests directory as it gets appended to the ipynb files. You need not rewrite your test cases (sorry for being wrong about this info earlier) but might need to run a script that will convert all your notebooks (currently compatible with version 3.x.x) to be compatible with otter version 4.x.x. Sean estimates that it will take you around 2 hours to do this task.
  • You can still be in version 3.3.0 and the existing workflow should work fine. You will miss out on the performance +feature upgrades made during the last two years - https://github.com/ucbds-infra/otter-grader/tags?after=3.2.1

Pls do let us know the option you want to consider?

@sean-morris
Copy link
Collaborator

@balajialg if you go to 4 you definitely need to run the conversion script.

@yousefh409
Copy link

@balajialg Just saw this. Thank you guys for all the detailed info, I really appreciate it! I think in that case we would like to upgrade to 4.4.1 for EE120. Please let me know if there is anything else I should do to assist with the upgrade.

@balajialg
Copy link
Contributor Author

@yousefh409 I think the next step is to work with @sean-morris to convert all your scripts to be compatible with version 4.4.1. He is out till mid next week - Can we prioritize doing this activity next week?

@yousefh409
Copy link

@balajialg Yes, I will be meeting with the new TAs tomorrow so can talk to them about it. Is there something else needed other than running the script for each notebook?

@balajialg
Copy link
Contributor Author

@yousefh409 My understanding is that running this script is the main activity that needs to happen!

@yousefh409
Copy link

Ok perfect, I’ll get started on doing so, and will let Sean know if we encounter any roadblocks.

thanks again for all the help!

@balajialg
Copy link
Contributor Author

Sounds great @yousefh409!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance window Tasks prioritized for maintenance window package-request Package addition request for a hub
Projects
None yet
Development

No branches or pull requests

7 participants