Как изолировать работу одной библиотеки от другой?
Подскажите пожалуйста как можно выйти из ситуации, когда в проекте одна из библиотек требует одну версию пакета, а код проекта написан на другой версии пакета.
Конкретный пример: В моём проекте код для работы с БД написан с использованием библиотеки SQLAlchemy 2.0, сейчас я пытаюсь подключить apache-airflow который у себя на борту использует SQLAlhemy 1.4.48. После установки airflow по умолчанию стояла версия 1.4.48, но с ней мой код не работает, но при попытке запустить DAG с версией 2.0 выходит ошибка:
TypeError: Invalid argument(s) 'encoding' sent to create_engine(), using configuration SQLiteDialect_pysqlite/QueuePool/Engine. Please check that the keyword arguments are appropriate for this combination of components.
Пытаться что-то скорректировать в исходных файлах библиотеки я конечно же не стал, в связи с чем возник вопрос, а как совместить эти пакеты?
UPD: в официальной документации Airflow есть упоминание об установке с ограничениями. настроенными библиотекой airflow, но как я не пытался проблема остаётся, интерпретатор видит только одну версию пакета