kolibri
kolibri copied to clipboard
Upgrade Python dependencies
Summary
- Upgrades all Python dependencies to the latest version that supports Python 3.6
- Note that it does not upgrade the Python redis library as far as it could go, because the django-redis-cache library we are using requires a redis version less than 4
References
Because we are still supporting EOL Python versions, we have to do these upgrades manually rather than relying on dependabot
Reviewer guidance
First we check if the tests pass, then a smoke test of the asset is in order, particularly testing Redis caching.
Testing checklist
- [ ] Contributor has fully tested the PR manually
- [ ] If there are any front-end changes, before/after screenshots are included
- [ ] Critical user journeys are covered by Gherkin stories
- [ ] Critical and brittle code paths are covered by unit tests
PR process
- [ ] PR has the correct target branch and milestone
- [ ] PR has 'needs review' or 'work-in-progress' label
- [ ] If PR is ready for review, a reviewer has been added. (Don't use 'Assignees')
- [ ] If this is an important user-facing change, PR or related issue has a 'changelog' label
- [ ] If this includes an internal dependency change, a link to the diff is provided
Reviewer checklist
- Automated test coverage is satisfactory
- PR is fully functional
- PR has been tested for accessibility regressions
- External dependency files were updated if necessary (
yarn
andpip
) - Documentation is updated
- Contributor is in AUTHORS.md
Build Artifacts
Asset type | Download link |
---|---|
PEX file | kolibri-0.17.0rc2.dev0_git.5.g86bdc325.pex |
Windows Installer (EXE) | kolibri-0.17.0rc2.dev0+git.5.g86bdc325-windows-setup-unsigned.exe |
Debian Package | kolibri_0.17.0rc2.dev0+git.5.g86bdc325-0ubuntu1_all.deb |
Mac Installer (DMG) | kolibri-0.17.0rc2.dev0+git.5.g86bdc325.dmg |
Android Package (APK) | kolibri-0.17.0rc2.dev0+git.5.g86bdc325-0.1.4-debug.apk |
TAR file | kolibri-0.17.0rc2.dev0+git.5.g86bdc325.tar.gz |
WHL file | kolibri-0.17.0rc2.dev0+git.5.g86bdc325-py2.py3-none-any.whl |
The only way to test that would be alongside kolibri-server
- failing that, when this is tested in KDP.
Hi @rtibbles sorry but I am still not sure how to properly test this one - could you please provide additional testing guidance?
As @marcellamaki mentioned - I think just smoke testing the various assets here is about all that is needed, so just making sure they all start (bar the Mac installer, which we have a separate issue filed for) - and ensuring that you can access Kolibri.
Hi @rtibbles
- The Android app is force closing immediately after being launched:
- Both the .deb and .exe assets can be installed but it's not possible to import a facility and to preview a lesson resource when creating lessons:
https://github.com/learningequality/kolibri/assets/79847249/5ab5f396-b029-43e4-886f-70aced55769a
Seems like this is less straightforward than I had hoped!
Hi @pcenov, I have rebased onto the latest develop, which should fix the 500 error you saw in import, and have made a fix for the error I saw in the Android logs!
Hrm, interesting - I'm not seeing anything unusual in the logs, my only hunch is that this has added a lot of additional files, causing the unpacking to take longer.
Yeah, sadly that seems to be the case - it just takes a lot of time for the unpacking to happen...
I can confirm this as replicable on my devices too. If there's nothing we can do to speed up the unpacking time, can we at least make sure to have the Kolibri loader instead of the blank screen for the duration? That would be better UX...
Or as we mentioned it with @pcenov, straight-up and explicit Loading...
(we have the string).
Looking at the assets, it looks like we now have two different packages that provide a complete copy of the timezone database, I think this is the cause of the extra files.
I think we can clean this up and only have one of these packages, but it seems simpler to do this after 0.17.0 is released. Bumping this to the first patch milestone instead.
Hi @rtibbles - I've tested again all the installers without any regressions observed, should be good to go!