2016-06-28 4 views
9

Wenn ich mein Skript ausführen, bekomme ich diese Ausgabe zu deaktivieren:Wie kann ich ExtDeprecationWarning für externe Libs in Kolben

/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.sqlalchemy is deprecated, use flask_sqlalchemy instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.marshmallow is deprecated, use flask_marshmallow instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.restful is deprecated, use flask_restful instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.restful.fields is deprecated, use flask_restful.fields instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.restful.reqparse is deprecated, use flask_restful.reqparse instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.restplus is deprecated, use flask_restplus instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.restful.representations is deprecated, use flask_restful.representations instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.script is deprecated, use flask_script instead. 
    .format(x=modname), ExtDeprecationWarning 
/app/venv/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.migrate is deprecated, use flask_migrate instead. 
    .format(x=modname), ExtDeprecationWarning 

Ich weiß nicht wirklich für dieses interessieren, weil externe libs verursachen diese. Ich kann diese Bibliotheken nicht aktualisieren, da ich sie nicht besitze und ich sehe, dass mehrere Anfragen ausstehen.

Wie kann ich etwas Ruhe bekommen?

Antwort

13

Ab Flask 1.0 existiert flask.ext nicht. Pakete, die diese Importe nicht repariert haben, funktionieren nicht.


Zuerst Sie sollte kümmern uns um das, weil die Pakete, die Sie verwenden sind nicht auf dem neuesten Stand. Melden Sie einen Fehler, den Sie verwenden sollten, um direkte Importnamen wie flask_sqlalchemy anstelle des flask.ext Import-Hooks zu verwenden.

Fügen Sie eine warnings.simplefilter Zeile hinzu, um diese Warnungen herauszufiltern. Sie können es dort platzieren, wo Sie Ihre Anwendung konfigurieren, bevor Sie Importe durchführen, die die Warnung auslösen.

import warnings 
from flask.exthook import ExtDeprecationWarning 

warnings.simplefilter('ignore', ExtDeprecationWarning) 
0

ich sicher aus Ihrer Frage nicht entscheiden kann, aber ich bin mir ziemlich sicher, dass es die Importe in den Quelldateien ist diese Warnungen that're verursacht.

Wenn Sie die veraltete flask.ext Import Umleitung verwenden, dann zum Beispiel:

flask.ext.sqlalchemy import SQLAlchemy() 

wird zum direkten Import:

from flask_sqlalchemy import SQLAlchemy() 

Wenn Sie Linux verwenden, diese Einzeiler macht die Änderung in allen Ihren Dateien und Ordnern rekursiv (von ./).

Sicherung zuerst zu einem anderen Dateipfad - ich kann nicht mit Sicherheit sagen, dass es den Inhalt eines .git-Verzeichnisses oder anderer von Ihnen verwendeter Software nicht beschädigt. Oder nehmen Sie einfach die Änderungen manuell vor.

find ./ -type f exec sed -i 's/flask.ext./flask_/g' {} \; 
+0

Ihre Annahme ist falsch, wie in der Frage klar und wie im Fehlerprotokoll ersichtlich. – jwg

Verwandte Themen