cmu-cs-academy / desktop-cmu-graphics

BSD 3-Clause "New" or "Revised" License
15 stars 9 forks source link

Add support for Python3.12, drop Python3.6 & 3.7 #60

Closed austin-schick closed 6 months ago

austin-schick commented 6 months ago

Updates our supported version range to be 3.8-3.12.

Includes a few nice updates to our notarization script, spurred by Apple dropping support for altool-based notarization. We now use notarytool, and don't re-sign binaries that have already been signed by us in the past.

schmave commented 6 months ago

Looking good! Do you think we can delete "tests" and "examples" from pygame? Not a big deal, but it saves 60MB or so:

(venv) Evan-MBP:cpython-cmu-graphics evan$ find cmu_graphics/libs -name tests | xargs du -sh
2.6M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_312/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_39/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_38/pygame/tests
2.6M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_312/pygame/tests
2.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_311/pygame/tests
2.3M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_310/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_38/pygame/tests
2.5M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_311/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_39/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_310/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_39/pygame/tests
2.5M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_311/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_38/pygame/tests
2.3M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_310/pygame/tests
2.6M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_312/pygame/tests
2.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_311/pygame/tests
2.3M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_310/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_39/pygame/tests
2.6M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_312/pygame/tests
2.2M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_38/pygame/tests
(venv) Evan-MBP:cpython-cmu-graphics evan$ find cmu_graphics/libs -name examples | xargs du -sh
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_312/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_39/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_38/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_312/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_311/pygame/examples
968K    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_310/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_38/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_311/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_39/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_310/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_39/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_311/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_38/pygame/examples
968K    cmu_graphics/libs/pygame_loader/modules/pygame_mac_310/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_win_32_312/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_311/pygame/examples
968K    cmu_graphics/libs/pygame_loader/modules/pygame_win_64_310/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_39/pygame/examples
1.0M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_arm_312/pygame/examples
1.5M    cmu_graphics/libs/pygame_loader/modules/pygame_mac_38/pygame/examples
austin-schick commented 6 months ago

I was able to re-enable a lot of things about the test setup that we'd previously disabled.

We now only skip Python 3.10 zip on Windows because of the Windows-specific cairo bug, and two particular image gen tests on the Mac pip tests. I'm not sure why those are failing.

schmave commented 6 months ago

Wonderful!!

austin-schick commented 6 months ago

This is a reminder to stop the Windows EC2 instance once this task is complete.