Com o django-compressor 2.3 atual, recebo um erro de importação
File ".../python3.8/site-packages/compressor/templatetags/compress.py", line 3, in <module>
from django.utils import six
ImportError: cannot import name 'six' from 'django.utils' (.../python3.8/site-packages/django/utils/__init__.py)
Parece que isso foi corrigido em https://github.com/django-compressor/django-compressor/commit/dabe46e092d3bfba139d6a1e018980f249d9d95c#diff -ac8de32c7b59ab69b2ac7137529224f0, mas não há nenhuma versão após esse commit. Com django.utils.six
removido no Django 3.0, parece que o django-compressor não será compatível com o Django 3.0 até que uma nova versão seja cortada para o django-compressor.
Veja também # 940.
Executando algumas verificações de sanidade em dois aplicativos django que possuo, não vejo nenhum problema com a versão atual do django_compressor.
(Para qualquer outra pessoa vendo este problema, você pode adicionar -e git://github.com/django-compressor/django-compressor.git@a5bfd775450428e1a261b88e1e5424bfb4dde081#egg=django_compressor
em seu arquivo requirements.txt para instalar o commit mestre atual do compressor diretamente do github)
Muito obrigado.
(Para qualquer outra pessoa vendo este problema, você pode adicionar
-e git://github.com/django-compressor/django-compressor.git@a5bfd775450428e1a261b88e1e5424bfb4dde081#egg=django_compressor
em seu arquivo requirements.txt para instalar o commit mestre atual do compressor diretamente do github)
eu tentei
$ pip install -e git://github.com/django-compressor/django-compressor.git@a5bfd775450428e1a261b88e1e5424bfb4dde081#egg=django_compressor
e bom resultado.
$ ./manage.py test monitor
Creating test database for alias 'default'...
System check identified no issues (0 silenced).
........
...
.
----------------------------------------------------------------------
Ran 10 tests in 5.034s
OK
Destroying test database for alias 'default'...
Tentarei encontrar tempo para fazer um lançamento em breve. Se você quiser ajudar, o teste do branch develop
em ambientes reais é sempre apreciado.
Estou executando o branch de desenvolvimento ( @ a5bfd77545 ) com Django 3.0 em produção com a seguinte configuração, sem problemas :)
COMPRESS_ENABLED = True
COMPRESS_OFFLINE = True
COMPRESS_MTIME_DELAY = 0
COMPRESS_CSS_FILTERS = [
'compressor.filters.css_default.CssAbsoluteFilter',
'compressor.filters.cssmin.CSSCompressorFilter'
]
COMPRESS_CSS_HASHING_METHOD = None
COMPRESS_JS_FILTERS = [
'compressor.filters.jsmin.JSMinFilter',
]
Isso está no heroku com gunicorn como um servidor, uvicorn como um trabalhador ASGI, canais como o roteador e ruído branco para servir arquivos estáticos.
A execução local (mesma configuração, exceto heroku) com compactação online também funciona bem.
Eu instalo os próximos pacotes via pip.
Mas falhou a instalação do django_compressor, porque instalou seis 1.13.0.
Altere install_requires
.
install_requires=[
.....
'six == 1.12.0',
],
Acabei de testar o branch atual develop
do django_compressor com Weblate e todos os testes foram aprovados. Você tem planos para o lançamento?
Há um PR para criar um novo lançamento em # 964, que está aguardando em # 967
setup.py
django-compressor tem este requisito:
'django-appconf >= 1.0'
django-appconf 1.0.3 funciona bem. E se eu instalar o django-compressor em um virtualenv vazio, esta é a versão que é instalada.
django-appconf 1.0.2 não funciona com Django 3: ele tenta importar django.utils.six. Quando eu atualizo o django-compressor, e já tenho o django-appconf == 1.0.2 instalado, o 1.0.2 satisfaz o requisito "> = 1.0". Então, no final, tive uma instalação quebrada.
Acho que o requisito django-appconf em setup.py
deve ser mais restrito.
Eu criei # 978 com base no comentário acima. # 964 pode ser mesclado após # 978
https://pypi.org/project/django-compressor/2.4/ foi lançado. Espero que funcione e muito obrigado por todos os seus esforços, @albertyw !
@diox você poderia adicionar a tag 2.4 git?
Feito.
Incrível, obrigado por fazer o lançamento!
A nova versão não aparece em https://django-compressor.readthedocs.io ainda - seria bom atualizá-la também.
mmm Eu acho que é porque eu esqueci de marcar a princípio, então não detectou 2.4 ainda. Não tenho certeza do que pode ser feito sobre isso - talvez se conserte assim que enviarmos mais coisas.
Eu reconstruí a versão stable
em readthedocs, o que levou a uma nova compilação 2.4, mas stable
ainda estava em 2.3. parecia um pouco com https://github.com/readthedocs/readthedocs.org/pull/3913 , e limpar o ambiente ajudou, então acho que está tudo bem agora. obrigado pelo relatório @ cuu508!
@intgr relatou que a versão latest
também não foi reconstruída. Eu verifiquei e parece que o problema era algo totalmente diferente, nosso repo ainda tinha as integrações antigas do github em vigor, que foram substituídas por webhooks há um ano. a página latest
readthedocs não foi atualizada automaticamente desde então. Eu adicionei um webhook, então ele deve funcionar automaticamente no futuro. obrigado @intgr!
e realmente funciona, eu apenas empurrei https://github.com/django-compressor/django-compressor/commit/bfd440feef72ec5a2ec68ed632c26c154cc9b92e e os documentos foram reconstruídos.
Comentários muito úteis
https://pypi.org/project/django-compressor/2.4/ foi lançado. Espero que funcione e muito obrigado por todos os seus esforços, @albertyw !