- 主题:3.12好多坑啊
- 升级python到3.12,django的mysql模块出错,安装还得要libmysql-dev
 idea出错,还得升级idea到2024.1
 
 各种坑
 --
 FROM 113.84.209.*
 
- 运维说django老版本有cve漏洞,让我升到5.0.7,然后这个需要3.10
 
 我从3.9升上来的,之前的pymysql就够用了,现在要整mysqlclient
 发现3.10就需要了,艸
 弄个docker环境还得整build essential
 
 【 在 JulyClyde 的大作中提到: 】
 : 不是从来都需要libmysqlclient-dev么?
 : 和3.12有啥关系呢?
 --
 修改:iwannabe FROM 119.139.197.*
 FROM 119.139.197.*
 
- 就是docker让我很纠结,pip install mysqlclient 还得装build essential
 【 在 prettyPIG 的大作中提到: 】
 : 所以说docker很伟大
 --
 FROM 119.139.197.*
 
- django.db.utils.NotSupportedError: MySQL 8.0.11 or later is required (found 
 5.7.44).
 
 艸
 
 【 在 iwannabe 的大作中提到: 】
 : 运维说django老版本有cve漏洞,让我升到5.0.7,然后这个需要3.10
 : 我从3.9升上来的,之前的pymysql就够用了,现在要整mysqlclient
 : 发现3.10就需要了,艸
 : ...................
 --
 FROM 119.139.197.*
 
- 你错了,python 3.9里的pymysql用的是python自己实现的mysql协议
 后面3.10就改成调用libmariadb,导致需要装native的mysql lib
 
 【 在 seablue 的大作中提到: 】
 : 这是你用的那个linux发行版升级机制和包管理器的坑,跟python3.12没关系。
 --
 FROM 27.38.197.*
 
- 今天再研究了一下,是django 升级到5.0.7,缺省的driver是mysqlclient,而不是
 pymysql
 要用pymysql,需要手工指定 "driver": "pymysql"
 
 
 【 在 adoal 的大作中提到: 】
 : 十有八九是不同packaging方式混用导致的
 --
 FROM 27.38.197.*
 
- 我也不想升啊,漏洞扫描非得逼你升
 
 【 在 happymarried 的大作中提到: 】
 : 我还需要连老的mysql,只能用Django 3.1以下,3.2都不能升级。
 --
 FROM 183.46.67.*
 
- 还有两个坑,3.12和idea/pycharm不兼容,调试会报错
 Unable to load extension pydevd_plugins.extensions.types.pydevd_plugin_pandas_
 types
 和celery不兼容
 AttributeError: 'cached_property' object has no attribute 'lock'
 
 然后celery的eventlet和dnspython 不兼容,导致连数据库和redis解析hostname失败
 
 这两天近搞这些坑了
 
 后面回退到3.10
 
 【 在 iwannabe 的大作中提到: 】
 : 升级python到3.12,django的mysql模块出错,安装还得要libmysql-dev
 : idea出错,还得升级idea到2024.1
 : 各种坑
 : ...................
 --
 FROM 183.46.67.*