PipelineCachedStorage class from dango-pipeline has been refactored to be used only below Django 3.1 as mentioned in https://github.com/jazzband/django-pipeline/pull/725. This change was published with version 2.0.5. Since the Maple release, the edx-platform has been updated to use Django 3.2.x and that's why we see the pipeline import creating issues.
Supporting information
django-pipeline Now recommends using PipelineManifestStorage instead of PipelineCachedStorage as it is mentioned in the commit description
How to reproduce
To reproduce this issue locally you can got to shell e.g. make lms-shell and run paver update_assets lms --settings=test_static_optimized and you should be able to notice this import error
from pipeline.storage import PipelineCachedStorage
ImportError: cannot import name 'PipelineCachedStorage' from 'pipeline.storage' (/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/pipeline/storage.py)
Testing instructions
As a first step you should try and reproduce the error
Shift to this branch of the platform and now run paver update_assets lms --settings=test_static_optimized again and this time the paver should be successful.
Description
PipelineCachedStorage
class fromdango-pipeline
has been refactored to be used only belowDjango 3.1
as mentioned in https://github.com/jazzband/django-pipeline/pull/725. This change was published with version2.0.5
. Since the Maple release, theedx-platform
has been updated to useDjango 3.2.x
and that's why we see the pipeline import creating issues.Supporting information
django-pipeline
Now recommends usingPipelineManifestStorage
instead ofPipelineCachedStorage
as it is mentioned in the commit descriptionHow to reproduce
make lms-shell
and runpaver update_assets lms --settings=test_static_optimized
and you should be able to notice this import errorTesting instructions
paver update_assets lms --settings=test_static_optimized
again and this time the paver should be successful.